(二)Linux网络编程之协议

一、协议格式

1. 以太网帧格式 – 借助mac地址完成数据报传递
(二)Linux网络编程之协议
arp数据报 – 根据IP获取mac地址
(二)Linux网络编程之协议
(二)Linux网络编程之协议


2.IP段格式
4位版本:ipv4 ipv6
8位生存时间(TTL):最多能经过多少跳
32位源IP地址:数据发送端地址
32位目的IP地址:数据接收端地址
(二)Linux网络编程之协议


3.UDP数据包格式
16位源端口
16位目的端口
(二)Linux网络编程之协议


3.UDP数据包格式
16位源端口:
16位目的端口:(二)Linux网络编程之协议


4.TCP数据包格式
16位源端口
16位目的端口
32位序号
32位确认序号
6个标志位
16位滑动窗口
(二)Linux网络编程之协议


6.tcp,udp传输层协议

  • tcp:面向连接的安全的流式传输协议
    (1)连接的时候,进行三次握手
    (2)数据发送的时候,会进行数据确认
    数据丢失之后,会进行数据重传
  • udp:面向无连接的不安全的报式握手
    连接的时候不会握手
    数据发送出去之后就不管了
    【如果数据包丢失会全丢,不存在丢失一半的情况】