网络基础常识
互联网的协议 : 相当于人类界的英语。
osi 七层协议。 由低到高列出 四大块,共7层
1.网络接口层
物理层 ——> 光缆,电缆,双绞线,无线电波, 高电压为1,低电压为0. 邮局。
数据链路层 ——> 报头(发送者,接收者/目的地)
mac地址,基于网卡的号码,也是计算机自己的身份证,48位二进制数。
广播进行通信。在了解其他计算机mac地址没错后,在物联网发送广播,广播域(局域网)所有计算机都能听到
2.网络层 ——> 要实现跨广播域(局域网)进行 消息访问。
ip地址 127.16.0.1 每一段都是8位(代表计算机是哪个广播域网络里的), 后面十六位,代表 主机位(是哪个计算机)
子网掩码 是为了确定哪几个部分是网络位,哪几个部分是主机位。网络部分数字1,主机部分是数字0
ip地址 可以人为改动,那么就会得出不同的 子网掩码 , ip地址二进制,与子网掩码进行and 操作可以获得通讯网络地址。
该层在发送的时候会传(自己的网络ip+子网掩码+自己的身份证。+对方的ip+子网掩码+对方身份证)
如果算出两个计算机的网络地址是一样的,代表在一个子网内,不需要走路由,如果不一样相反。
所以先需要获取到 对方mac地址。
目标计算机的身份证获得——arp协议。
arp——> 发送自己ip 最大mac 网关ip (这个屋网关)——(路由)——(目标屋的网关) 目标获取,再把自己身份证给回应回去。
3.传输层 ——> TCP UDP
找到了不同子网的机器后,需要找到该机器的进程软件,进行交互,每个进程都有端口,所以需要找目标端口。
0——1023 端口 被系统占用,其余的都是别的端口号
每个端口号会被网卡绑定。
TCP协议 tcp 双管道对方收到要有响应 UDP则对方收到不需要响应,一直发。
报头+数据 。
(拟态网头+ip头+tcp头+数据) udp 则用udp头
源端口,和目标端口 分别建立两个标志位。
syn——请求链接
ack——确认
fin——断开连接。
第一次握手:Client将标志位SYN置为1,随机产生一个值seq=x,并将该数据包发送给Server,
Client进入SYN_SENT状态,等待Server确认。
第二次握手:回应+ 建立连接。
Server收到数据包后由标志位SYN=1知道Client请求建立连接,
Server将标志位SYN和ACK都置为1,ack (number )=x+1,随机产生一个值seq=y,
并将该数据包发送给Client以确认连接请求,Server进入SYN_RCVD状态。
第三次握手:Client收到确认后,检查ack是否为x+1,标志位ACK是否为1,
如果正确则将标志位ACK置为1,ack=y+1,并将该数据包发送给Server,
Server检查ack是否为y+1,ACK是否为1,
如果正确则连接建立成功,Client和Server进入ESTABLISHED状态,
完成三次握手,随后Client与Server之间可以开始传输数据了
总结:
第一次握手 就是客户端向服务端发送一次请求 看看服务端是否接收到
第二次握手 就是服务端收到第一次后,返还给客户端 告诉客户端我收到了
第三次握手 就是客户端收到服务端反馈后,就可以建立连接通道了。
可以想象成一个管道,两边的人需要依次确认对方能收到信息后,建立起连接。
断开连接是四次握手。
dhcp ——> 是获取本机ip地址等一系列的 装置,一般都会集成在交换机上。(二层家用)
三层交换机 多集成了一个路由。
四层交换机
传输层——>四层交换机
网络层——>路由器,三层交换机。
数据链路层——> 网桥,拟态网交换机(最大传输1500字节),网卡
物理层——> 中继器 ,继线器,双绞线。
4. 应用层
顾名思义,是跑应用程序的层。弹药遵循应用协议,应用协议,总共有
Email WWW FTP 这些数据格式,组成了应用层。
DNS——>就是一个把域名转换为ip地址的翻译者。
获取到一个url 后,本地的DNS服务器会先把ip域名获取,在找各个国外的跟域服务器(。com)等进行访问,看是否能解析出ip.
为什么只有13台呢
DNS 根据UDP 协议去查找13个根域服务器,是极限了。如果在多就会造成丢包现象。