OSI七层模型和TCP/IP四层模型

OSI七层模型功能及协议:
应用层:
为操作系统或网络应用程序提供访问网络服务的接口。协议包括:HTTP、SNMP、Telnet、FTP等。
表示层:
数据转换包括:数据的加密、压缩、格式转换等。协议包括:ASCII、JPEG、MPEG等。
会话层:
管理主机之间的会话进程,即负责建立、管理、终止进程之间的会话。协议包括:RPC、NetBISO等。
传输层:
主要功能是数据分段、可靠的或不可靠的传输、差错控制和流量控制。协议包括:TCP、UDP、SPX等。
网络层:
负责对子网间的数据包进行路由选择和IP寻址的功能。尽最大可能交付服务,不提供校验,允许乱序的机制。协议包括:IP、ICMP、RIP、OSPF。
数据链路层:
数据链路层在不可靠的物理介质上提供可靠的传输。主要功能是物理地址寻址(MAC)、帧的定界、流量控制、数据监测、透明传输等。协议包括:PPP、帧中继等。
物理层:
主要功能是对数据传输线路和传输信道进行定义。物理层数据的单位称为“比特流”。
TCP/IP的四层模型

OSITCP/IP协议集
应用层应用层HTTP、DNS、FTP、SMTP、POP3、TELNET
表示层
会话层
传输层传输层TCP、UDP、SPX
网络层网络层IP、ARP、RARP、ICMP、RIP、OSPF
数据链路层网络接口各种通信网络接口
物理层

 

UDP和TCP

TCP:传输控制协议。是一种面向连接、可靠的、基于字节流的传输层通信协议。

TCP的特点:

(1)面向字节流

应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分区成适应长度的报文段(报文段的长度不能超过MTU限制)。

(2)TCP是面向连接的传输层协议

当TCP要发送数据时,需要通过三次握手协议建立连接。之后TCP把结果包传给IP层,由它来通过网络将包传送给接收端实体的TCP。

(3)点对点的通信

每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的。

(4)TCP提供可靠交付的服务

TCP为了保证不发生丢包,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的包发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据包就被假设为已丢失将会被进行重传

(5)TCP提供全双工通信

TCP允许通信双方在任何时候都能发送数据。所以在两端都设置了发送缓存和接收缓存,用来临时存放数据。

UDP协议全称是用户数据报协议。是一种无连接的协议。UDP不要求分组顺序到达的传输中,分组传输的顺序的检查与排序由应用层完成,提供面向报文的简单不可靠信息传送服务。

UDP的特点:

(1)UDP是一个无连接的协议

传输数据之前源端和终端不建立连接,当有数据传输时,只需要将数据前加上UDP首部。(源端口、目的端口、长度、校验和)信息,直接交付到网络层上传输数据。

(2)UDP尽最大努力交付

UDP传输数据时既不保证可靠交付,也不使用拥塞控制。在传输过程中可能存在丢包的现象,可能存储在数据在传输中不可能按时到达和乱序的现象。

(3)一对多通信

UDP在传输前不建立连接,因此也就不需要维护连接的状态,包括收发状态等,所以服务器可以支持一对一、一对多、多对一和多对多的交互通信。

(4)UDP报头短

UDP的头部只有8个字节,信息的额外开销很小。

(5)UDP是面向报文的

发送发的UDP对应程序交下来的报文,在添加首部后就向下交付给IP层。既不拆分,也不合并,而是保留这些文本的边界,因此,应用程序需要选择合适的报文大小。

UDP的应用场景:

某些实时性要求高的场景(比如电话会议、直播、王者荣耀)

TCP与UDP的区别

TCP/IP与UDP/IP传输数据的方式:

    

TCP三次握手和四次挥手推荐博客:

https://www.cnblogs.com/zmlctt/p/3690998.html

注:在客户端与服务器端创建连接中,任意一端掉线,TCP都会重发SYN包,一般会重试五次,在建立连接中可能会遇到SYN Flood攻击。遇到这种情况你可以选择调低重试次数或者在不能处理的情况下拒绝请求。

为什么客户端要进入TIME-WAIT状态,等待2MSL时间后进入CLOSED?

为了保证服务端能收到客户端的确认应答,若客户端确认应答后直接进入CLOSED状态,如果确认应答因为网络问题一直没有到达,那么会造成服务端的不能正常关闭。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值