1.物理层
网线,光缆,无线电波
负责传输0和1 负责传输电信号
2.数据链路层:负责给新号分组,确定分组的方式
以太网:
1.规定一组电信号组成一个数据包 一部分叫head 一部分叫data
2.必须以网卡链接网络,mac地址就是网卡地址,发送者和接受者都以mac地址的形式保存在head中
每个网卡的mac地址是独一无二的,长度是48个2进制位
3.以广播形式发送.在网络中的所有设备都可以接受这个包,但只有head中规定的接受者才能收到并做进一步处理
3.网络层
单单依靠以太网的广播形式和mac形式不能满足互联网的发展,需要有一种方式,怎么样辨别两个mac地址是不是同处于一个网络
IP协议:
1.规定设备在网络的地址,ipv4 ipv6
ipv4:
32个2进制位组成,4段十进制,每一段最大是0-255
0.0.0.0 - 255.255.255.255
ipv6:
更长,对应更多的情况
2.IP地址前半段代表网络,后半段代表主机
子网掩码的作用:
为了区分网络和主机的分布
使用子网掩码和IP地址,进行按位与运算(ip and 子网掩码)就能得到网络地址
如果两个ip地址按同样的子网掩码运算之后,得到同样的结果,那么两个ip就在同一个局域网里
3.ip规定的数据包:
就是在链路层包的基础上,再加一层head;
这次添加的head中,包含版本 长度 ip地址等等
4.传输层
1.端口:端口对端口
应用程序访问网络需要占用一个端口
那每一台设备提供了65536个端口,从0-65535
0-1023端口,被系统占用
这样规定之后,主要确定ip和端口,就可以实现应用程序之间的网络通信
在Unix里,把主机+端口叫做一个Socket
2.常见的传输层协议
1.UDP
优点:
数据包结构简单,容易实现,适用于连接可靠性要求不高的场合
缺点:
不能知道对方是否收到数据
2.TCP
优点:
可靠性高,能够知道对方是否收到数据,并能及时补包
缺点:
协议复杂,消耗较大,实现比较困难
TCP通过三次握手来确保一次连接的可靠性
5.应用层
是一个非常开放的一层,比如邮件(STJP),文件传输(FTP),万维网(www).....
这一层直接面向用户
常见名词解释:
域名:baidu.com
DNS:域名解析服务器
DNS劫持:
HTTP:
请求+响应
请求:(request)
GET:请求的参数会附带在请求地址之后
POST:请求的参数会在DATA中
GET/POST请求
响应:(response)
响应码:
200:一切正常
404:not found
403:没有访问权限
502:服务器错误
原文:https://www.cnblogs.com/lzb1234/p/10591830.html