TCP UDP
2017-06-24 14:28
316 查看
TCP/IP协议簇层次结构 与 OSI模型对比
TCP/IP 仅仅在TCP协议端对端进行差错控制,OSI在每一层进行差错校验和控制
IP层有5种协议 包括IP协议,IP协议:互联网协议 其他的协议:物理地址转换为ip地址的协议,ip地址转换为物理地址的协议,报文控制协议,组控制协议等
IP协议:提供无连接的,不可靠的数据报协议,尽力而为的服务,PDU(协议数据单元)为IP数据报(IP分组)
TCP协议:运输层协议,有连接的 可靠的服务,进行差错控制
UDP协议:运输层协议,无连接,不可靠的服务,不进行差错控制,不对报文进行分段,所以报文大小有限制。
UDP数据报最大长度:
由IP层MTU限制, IP数据报由数据链路层MTU限制
对于以太网来说 数据链路层 数据帧大小限制为1500字节
那么IP层去掉 20字节的数据报头,剩下1480字节供UDP数据报使用
UDP数据报减去8字节的数据报头,则剩下了1472字节可用
所以UDP数据应该在1472字节以下
由于不同的路由器可设置不同的MTU所以为了避免不必要的运算,可采用Internet标准值
Internet标准MTU为576字节,减去IP数据报头部20字节,UDP数据报头部8字节,剩余548字节,所以UDP数据长度最好小于548字节。
4 | 应用层 | 应用层 | 7 |
表示层 | 6 | ||
会话层 | 5 | ||
3 | 运输层 | 运输层 | 4 |
2 | IP层 | 网络层 | 3 |
1 | 网络接口层 | 数据链路层 | 2 |
物理层 | 1 |
IP层有5种协议 包括IP协议,IP协议:互联网协议 其他的协议:物理地址转换为ip地址的协议,ip地址转换为物理地址的协议,报文控制协议,组控制协议等
IP协议:提供无连接的,不可靠的数据报协议,尽力而为的服务,PDU(协议数据单元)为IP数据报(IP分组)
TCP协议:运输层协议,有连接的 可靠的服务,进行差错控制
UDP协议:运输层协议,无连接,不可靠的服务,不进行差错控制,不对报文进行分段,所以报文大小有限制。
TCP:数据传输控制协议 | UDP:用户数据报协议 |
有连接 一对一 | 无连接 一对一 一对多 多对一 多对多 |
有连接,所以收包顺序的 | 无连接,所以可能乱序收包 |
数据分为报文段 | 不会对报文进行分段,所以需要控制报文大小,如果报文长度超过了MTU(最大传输单元)则IP层就会进行分组发送,接收方也要进行组包 |
由IP层MTU限制, IP数据报由数据链路层MTU限制
对于以太网来说 数据链路层 数据帧大小限制为1500字节
那么IP层去掉 20字节的数据报头,剩下1480字节供UDP数据报使用
UDP数据报减去8字节的数据报头,则剩下了1472字节可用
所以UDP数据应该在1472字节以下
由于不同的路由器可设置不同的MTU所以为了避免不必要的运算,可采用Internet标准值
Internet标准MTU为576字节,减去IP数据报头部20字节,UDP数据报头部8字节,剩余548字节,所以UDP数据长度最好小于548字节。
相关文章推荐
- 三十天学不会TCP,UDP/IP网络编程 - UDP的实践--DHCP
- Python网络编程之TCP与UDP协议套接字用法示例
- (UNP点滴记录) TCP端口号与并发服务器,缓冲区大小限制,TCP/UDP输出机制
- 面向报文(UDP)和面向字节流(TCP)的区别
- [译]TCP和UDP的区别
- TCP、UDP区别
- IP.UDP.TCP这各个协议详解
- ip,tcp,udp,rudp包头
- UDP TCP应用场景
- Java 使用 TCP 和 UDP 传输文件
- 浅析TCP字节流与UDP数据报的区别
- linux下端口扫描的实现(TCP connect、TCP SYN、TCP FIN、UDP四种方式)4 TCP SYN方式
- UDP to TCP 数据转发
- 查看linuxTCP和UDP监听状态
- [转]基本应用层的TCP/IP协议介绍 (IP/TCP/UDP)
- TCP/IP-UDP
- TCP与UDP区别
- 【基础网络】TCP与UDP 的区别
- tcp和udp的区别
- 同一端口监听tcp和udp请求