
网络编程
Daria_
这个作者很懒,什么都没留下…
展开
-
OSI、TCP/IP模型及网络相关基础知识
网络: 将不同区域的电脑连接在一起,组成局域网、城域网、广域网,把分布在不同地理区域的计算机与专门的外部设备用通信线路互联成一个规模大、功能强的网络系统,从而使众多的计算机可以方便的互相传递信息,共享硬件、软件、数据信息等资源。功能:资源共享信息传输与集中处理负载均衡与分布处理通讯协议: 计算机网络中实现通信必须有一些约定,即通信协议,对速率、传输代码、代码结构、传输控制步骤...原创 2019-05-30 17:32:06 · 328 阅读 · 0 评论 -
使用基于TCP协议的Socket编程模拟多用户网络登陆
一、需求:完成多用户网络登陆功能用户输入用户名密码,服务器给出登陆成功或失败的提示二、分析:使用基于TCP协议的Socket网络编程实现TCP协议基于请求-响应模式在网络通信中,第一次主动发起通讯的程序被称作客户端(Client)程序第一次通知等待连接的程序被称为服务器端(Server)程序利用IO流实现数据的传输三、服务器端思路1、指定端口,使用Serve...原创 2019-05-30 19:12:50 · 1020 阅读 · 0 评论 -
基于UDP协议的Socket的网络编程模拟一对一的在线交流
一、需求:老师和学生在线一对一交流二、分析:使用基于UDP协议的Socket网络编程实现;不需要利用I/O流实现数据的传输;每个数据发送单元被统一封装成数据包的方式,发送方将数据;包发送到网络中,数据包在网络中去寻找它的目的地;三、发送端思路:1、使用DatagramSocket 指定端口,创建发送端;2、将基本类型 转成字节数组;3、封装成DatagramPacket包...原创 2019-05-30 19:32:50 · 606 阅读 · 1 评论 -
TCP --传输控制协议
一、TCP为应用层提供的服务TCP是一种面向连接的、可靠的字节流服务: 面向连接意味着两个使用TCP的应用(通常是Server和Client),在彼此交换数据之前必须先建立一个TCP连接; TCP通过下列方式来提供可靠性:应用数据被分割成TCP认为最适合发送的数据块(UDP应用程序产生的数据报长度是保持不变的),由TCP传递给IP的信息单位称为报文段或段(segment);当TCP...原创 2019-05-30 20:18:43 · 416 阅读 · 0 评论 -
UDP -- 用户数据报协议
一、UDP协议:User DatagramProtocol 一种无连接的传输层协议,提供面向事务的简单不可靠的信息传送服务特点:非面向连接,传输不可靠,可能丢失数据;数据传输时不会进行事前连接和事后断开连接;发送方不管对方是否准备好,接收方收到也不会确认;可以广播发送;非常简单的协议,开销小; 进程的每个输出操作都正好产生下一个UDP数据报,并组装成一份待发送的IP数据报,...原创 2019-05-31 17:26:55 · 276 阅读 · 0 评论 -
TCP -- 三次握手、四次挥手
TCP建立连接和终止连接会涉及到TCP首部的确认字段,相关知识在上一篇博客里:https://mp.youkuaiyun.com/mdeditor/90704793#一、三次握手 – 建立一个TCP连接三次握手过程:客户端发起,第一次握手时,SYN=1(指明客户端打算连接的服务器的地址),客户端发起第一次握手后处于SYN-SENT状态;服务端接收到消息后,发起第二次握手作为应答,SYN=1,ACK=...原创 2019-05-31 17:52:52 · 239 阅读 · 0 评论 -
Unix提供的五种IO模型
用户发起read操作为例,有这样两步操作:等待数据准备;将数据从用户空间拷贝到用户空间;Unix提供的五种IO模型:阻塞IO非阻塞IOIO复用信号驱动IO异步IO...原创 2019-06-18 12:06:10 · 277 阅读 · 0 评论 -
BIO -- 同步阻塞的编程方式
BIO编程方式通常是在JDK1.4版本之前常用的编程方式一、编程实现的过程: 先在服务端启动一个ServerSocket来监听网络请求,客户端启动Socket发起网络请求,默认情况下ServerSocket会建立一个线程来处理此请求,如果服务端没有线程可用,客户端则会阻塞等待或者遭到拒绝,并且建立好的连接,在通信过程中是同步的,在并发处理上效率较低; 同步并阻塞,服务器实现模式为一个连...原创 2019-06-18 15:46:02 · 372 阅读 · 0 评论