网络编程笔记

网络编程

TCP协议(Transfer control protocol)

一种面向连接的、可靠的、基于字节流的传输层(Transport layer)通信协议 。
特点:
•面向连接
•点到点的通信
•高可靠性:三次握手
•占用系统资源多、效率低

      注:三次握手
    第一次握手:客户端发送连接请求给服务器端,等候服务器端确认;
    第二次握手:服务器端收到客户端发来的请求,向客户端发送确认连接信息;
    第三次握手:客户端接到服务器端发送来的确认连接信息,也要向服务器端再发送一次确认连接信息。至此三次握手完成。客户端和服务器端进入准备传送数据状态。

一次单向通信
网络编程笔记_第1张图片
网络编程笔记_第2张图片
一次双向通信
网络编程笔记_第3张图片
网络编程笔记_第4张图片
网络登录-传输对象
网络编程笔记_第5张图片
网络编程笔记_第6张图片
TCP编程-引入多线程
网络编程笔记_第7张图片
网络编程笔记_第8张图片
网络编程笔记_第9张图片

UDP协议(User DatagramProtocol )

一种无连接传输层协议,提供面向事务的简单不可靠信息传送服务
特点:
•非面向连接,传输不可靠,可能丢失
•发送不管对方是否准备好,接收方收到也不确认
•可以广播发送
•非常简单的协议,开销小

一次单向通信
网络编程笔记_第10张图片
网络编程笔记_第11张图片

客户端 发送的数据包 包含 服务端的地址和端口号
client.send(packet);
服务端 只是用来接收数据 数据包 不需要含有目的地地址的 服务端的地址和端口号
server.receive(packet);

一次双向通信
网络编程笔记_第12张图片
网络编程笔记_第13张图片
多次双向通信
网络编程笔记_第14张图片
网络编程笔记_第15张图片
发送文件到服务端
1.读取本地文件
2.将本地文件发送到服务端
网络编程笔记_第16张图片
网络编程笔记_第17张图片

URL(Uniform Resource Locator)

•统一资源定位符,由4部分组成:协议 、存放资源的主机域名、端口号和资源文件名。
•URL是指向互联网“资源”的指针。
•资源可以是简单的文件或目录,也可以是对更为复杂的对象的引用,例如对数据库或搜索引擎的查询。

IP地址和端口

IP地址:用来标识网络中一个通信实体的地址
端口:用来区分不同通信实体内不同的应用程序
端口范围0—65535,16位整数

你可能感兴趣的:(笔记,socket,java)