数据封包和拆包
每次进行send和recv都会进行一次封包和拆包
每次传输的总数据长为1500字节
我们用的以太v2版本
MAC地址 六个字节
IP头的格式?!
默认二十个字节 可以带选项变大
计算机网络---->4.2.5 图-4.13
(3字节)标志: MF = 1 表示后面还有分片的数据报
DF 后面不能分片 只有DF = 0 的时候后面才可以分片
TTL: ---- 在找网址的时候查找的次数
TCP层
默认二十个字节 但也可以带选项会变大
sequence number 会记录发送的次数
acknowledgment number 会记录应答的地方编号
TCP flag ------> 计算机网络 5.5 图-5.14
紧急URG (U)
因为tcp是流式套接字,正常顺序发送的是1 2 3 但可以让3是紧急数据
尽快传输(相当于高优先级的数据)
确认ACK ack = 1 时 确认好字段才有效。
推送PSH 担当两个应用进程进行交互式通信时。发送方置1并且发送报文段。
复位RST 当RST = 1 时,表示TCP连接中出现严重差错,必须释放链接,然后再重新建立链接,
同步SYN 当SYN = 1 而 ASK= 0 时,表明这是一个链接请求报文段。
然后转换SYN = 1 和 ASK = 1.
终止FIN 用来释放一个链接。当 FIN = 1 时说明发送方已经发送完毕数据。
UDP协议也是传输层协议,他是无连接不保证可靠的协议,
常用网络测试工具
secure crt //windows软件
sudo ufw disable/enable 防火墙关闭/打开
sudo apt-get install openssh-server openssh-client 安装用于远程登陆的必备软件
sudo passwd 修改linux客户端密码
sudo apt-get install wireshark 网络抓包工具 只有网络设备闭上有数据的收发 就会放在这里。
sudo wireshark 使用抓包工具
{观察三次握手和四次挥手}
--------------------------------------------------------------------
URF 统一资源定位符
(应用程协议)HTTP 超文本传输协议 基于 TCP连接
HTML 超文本标记语言 ----> 不止有字符串 还有二进制文件。
eg: Word 文本
get ------>请求行
Host : 被请求的主机
User - Agent : 用户代理 //浏览器
Accept: 可以接收的数据类型
Accept-Language: 可接收语言
Accept-Encoding : 加密
Connection: 连接方式: 长连接和短链接