互联网协议分别有4层,5层,7层说法
1. 四层:应用层,传输层,网络层,网络接口层
2.五层:应用层,传输层,网络层,数据链路层,物理层
3.七层:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层
物理层:电气特性,负责传送0和1电信号
数据链路层:确定0和1的分组方式
以太网协议,MAC地址,广播形式发送
网络层:主机到主机的通信
(1)不同子网络:没有办法得到对方的MAC地址,需要两个网络连接处的网关来处理
(2)同一个子网络:ARP协议得到对方的MAC地址
传输层:端口到端口的通信
套接字:Unix系统把主机+端口叫做‘套接字’
TCP:即有确认机制的UDP,三次握手和四次挥手以确保数据不会遗失
应用层:规定应用程序的数据格式
当用户访问网页的时候,互联网协议是怎么运作的
* 本机的IP地址:192.168.1.100
* 子网掩码:255.255.255.0
* 网关的IP地址:192.168.1.1
* DNS的IP地址:8.8.8.8
2. 然后他打开浏览器,想要访问Google,在地址栏输入了网址:www.google.com
3.将www.google.com->通过DNS服务器(8.8.8.8)->转化为IP地址(172.194.72.105)
4.用子网掩码,判断IP和主机IP是否在同一个子网络。
不在同一网络:我们要向Google发送数据包,必须通过网关192.168.1.1转发,也就是说,接收方的MAC地址将是网关的MAC地址
5. 发送数据包:
应用层(HTTP协议)->传输层(TCP:端口80)->网络层(IP:本机192.168.1.100---->Google172.194.72.105)->网络接口层(以太网协议)
经过多个网关的转发,Google的服务器172.194.72.105,收到了这四个以太网数据包。
根据IP标头的序号,Google将四个包拼起来,取出完整的TCP数据包,然后读出里面的"HTTP请求",接着做出"HTTP响应",再用TCP协议发回来。
原文:https://www.cnblogs.com/ppybear/p/12259202.html