OSI七层协议,UDP,TCP协议

根据个人理解以及书本知识进行总结,非常欢迎提出意见。

                         OSI七层协议


应用层:

开放系统互连环境的最高层,为操作系统或者网络应用提供网络服务的接口。

表示层:

数据加密和压缩,采用统一的标准编码将应用层的数据进行转换,从而使计算机之间能够相互通信。

会话层(会晤层):

组织和同步不同主机上各种进程间的通信,负责在两个会话层实体之间进行对话连接的建立和拆除,提供数据流中插入同步点机制,例如网络中断后,不必完全重新开始传数据,而是重传同步点后的数据。

传输层:

负责数据传送的最高层次。完成端到端的数据传输。

网络层:

负责选择合适的路由,使网络传输单元能够按照地址找到目的站。

数据链路层:

负责相邻节点间线路上传输以“帧”为单位的数据,每一帧包括一定的数据和控制信息,传输出错则重发该帧。

物理层:

为上一层的数据提供物理链接,传输比特流。


TCP协议:


TCP是一种面向连接的,可靠性高,基于字节流的传输层通信协议。

三次握手建立连接:

a)请求端发送一个SYN段指明客户打算连接的服务器端口,以及初始序ISN列号:eg.1415531521

b) 服务器发回包含服务器的初始序列号(1823083521)的SYN端报文段作为应答。meanwhile,将确认序列号设置为客户端ISN+1对客户端SYN报文段进行确认。

 c)客户端必须将确认序号设置为服务器ISN+1对服务器的SYN报文段进行确认。

OSI七层协议,UDP,TCP协议_第1张图片
three-way-handshaking

四次挥手断开连接:

a) 客户端将自己的socket关闭,内核协议栈向服务器发送一个FIN包,请求断开连接。

b)服务器收到请求后,内核协议栈会向客户端发送一个ACK包作为应答,表示已经收到请求。

c)服务器运行一段时间后,关闭自己的socket。内核协议栈会向客户端发送一个FIN包,请求断开连接。

d)客户端收到服务器的FIN包后,会发出一个ACK做出应答,表示已经收到服务器请求。

OSI七层协议,UDP,TCP协议_第2张图片
四次挥手

                                  

UDP协议


 udp是一种面向无连接的传输层协议,提供面向事务的简单不可靠传送服务。


TCP与UDP区别:


1.TCP是面向连接的,UDP是无连接的。

2.TCP提供可靠的服务,数据无错误,不丢失,不重复,按顺序到达。UDP没有保证。

3.TCP面向字节流。UDP面向报文,UDP没有congestion control,适用于real-time transfer.

4.TCP连接是点对点的,UDP支持多对多通信。

5.TCP头部20字节,UDP头部8字节。

你可能感兴趣的:(OSI七层协议,UDP,TCP协议)