标签:icmp 运算 广播 数据 网桥 0.0.0.0 不可 mac 阶段
网络协议和管理总线型网络:
当网络之中的两台主机间想要通讯数,借助CSMA/CD(多路访问载波侦听冲突检测机制)进
行通讯
星型网络(HUB星型结构)
环形拓扑网络(令牌环网,主机之间通过持有令牌进行通讯)
应用层
定义多种传输协议,以及用户身份的验证,如http,dns,mysql
表示层
格式化数据(封装相对应的MAC地址)
构建数据
提供各种加密机制
会话层
建立,管理和终止应用程序之间的会话
传输层
确保数据传输的可靠性(TCP UDP)
网络层
数据链路层
定义如何格式化数据,以进行传输,属于这个阶段的是以太网
物理层
为网络之间的通讯提供硬件保障,属于这个阶段的多是一些物理上的硬件设施,如网线等
应用层
对应七层模型中的应用层,表示层,会话层
传输层
网络层
数据链路层
作用:用来隔断各种冲突域,但是不能够隔离广播域
代表:交换机,其中带有路由的交换机叫做三层交换机
作用:可以用来隔断广播域和加固安全,不然在网络中的广播太多会导致带宽的速度下降,
而且没有任何安全性。各台主机之间可以跨路由通讯,但是在网络之中并没有那么多的广播
占用带宽
跨路由通讯的过程(主机A到主机B):
主机A首先要知道访问主机B的IP地址,MAC不知道并不要紧。当A主机拿到B主机的IP的地
址之后,会将本主机的子网掩码和对方的IP进行与运算,用来判断主机B是否和本主机处在
一个网段之中,如果不是那么会将数据进行转发到默认网关
在将数据发往网关的时候,主机A会通过ARP请求得到默认网关的MAC地址,并且将发送给
主机B的数据包在数据链路层进行封装,封装完成之后会发送给默认网关
当路由收到主机A发送的数据包,发现封装的MAC地址和当前路由的MAC地址一样,便开
始解封装。解封装后得到主机B的IP地址,发现主机B的IP地址和自己并不在一个网段中,
所以就会在路由表中检查是否有相对应主机B所在的网络地址,如果有便将数据在次封装,
并在封装的时候加上路由的MAC地址和主机B所在路由的MAC地址,最后发送给主机B所在
的路由
当主机B所在的路由收到主机A所在的路由发送的数据包时,发现数据包的上写的MAC地址
与其匹配,那么便开始解封装,但是解封装之后发现目的的IP地址并不是默认网关的地址,
于是便在其本网段之内发送ARP请求,将得到主机B的MAC地址重新封装到数据包中
主机B得到本机路由发来的数据包时,会进行解封装,解封装之后发现数据对应的IP地址是
本机的IP,就再次解封装,并且得到数据和主机A的MAC地址
注:在跨路由通讯的过程中,目的地的IP地址始终是保持不变的,只有目的MAC地址发生变
化
分类:
主机路由
网络路由
默认路由
注:可用route命令定义是哪一种路由,并且精度越高,优先级越高,主机路由的优先级最高
,可用-n选项查看当前系统的路由
TCP协议:是面向连接的协议,两台主机在通讯时,首先建立稳定的连接在通讯,简称TCP
的三次握手
常见的TCP端口:
80:http
telnet:23
ftp:21
ssh:22
mysql:3306
dns:53(区域传送)
nfs:2049
注:常见端口号在/etc/serices中显示
滑动窗口:
当TCP在进行三次握手时,回向客户端发送相应的握手包,握手包的可能会有很多个,但
是要根据接收端能够接收的包来进行传送,所以在传送时这个窗口的大小不确定。
流量控制:
当tcp在进行三次握手时,接收端返回的ACK确认包中会告诉发送端,自己一次能够接收多
大的数据流量。当发送端收到之后会根据接收端告诉的数据大小给接收端发送数据。
TCP的三次握手:
前提:假设客户端和服务器端都处于CLOSE状态
1,客户端主动给服务端发送握手包,并且在握手包上附加上序列号。发送完成之后,客户
端会变成SYN-SENT状态
2,服务端收到客户端发送的握手包时,会将的状态变成LISTEN状态,并给客户端发送确
认包,并在确认包上附加确认包的序列号,而且还会把客户端发送的捂手包同时发送回去
,并且在握手包的序列号上加1。并且将自己的状态变成SYN-SENT状态
3,客户端收到服务端发送的确认包之后,会给向客户端再次发送握手包和确认包,并且在
确认包的序列号上加1,并且将自己的状态变成EATAB状态
4,当服务端收到客户端发送的握手包和确认包之后,会将自己的状态变成EATAB状态
5,当客户端和服务端都变成EATAB状态时,两台服务器之间开始进行区域传送
TCP的四次挥手:
前提:假设两个客户端都在进行连接状态,并且没有突然断网的情况,客户端主动和服务
器断开连接
1,客户端向服务器端主动发送分手包,并在分手包上加上序号,发送完成之后,客户端进
入FIN-WAIT1状态
2,服务器端收到客户端提出的分手包之后,进入CLOSE WAIT状态,并向客户端发送确
认包,并在确认包的序列号标识成分手包的序列号加1。服务端发送完确认包之后会再次向
客户端发送自己的分手包和确认包,并在分手包上加上序列号。最终将自己转变成LAST-AC
K状态。
3,客户端收到服务端的确认包和确认号之后,会将自己的状态变成FIN-WAIT2状态,并且
最后等待客户端把剩余的数据传送完成,客户端会有一个TIME-WAIT的时间,这个时间是
两倍的数据时长,用来确定数据是否传输成功。当传输成功时,客户端会向服务器端发送
确认包,最后转变成CLOSE状态
4,服务器端收到客户端最终的确认包之后,最终会将自己的状态转变成CLOSE状态
注:服务端和客户端在传输过程中所处的各种状态叫做有限状态机
UDP协议:
特点:UDP协议在传输过程中不会有相应的三次握手,所以它在传输过程中速度相对于
TCP的速度更快,但是稳定性相对较差,并且不识别数据包的先后顺序,多用来传输视屏
的语音等
作用:通过ARP地址解析,将主机的物理地址转变成逻辑地址,并且会附加上对应的地址
协议,目前常用的有IPv4和IPv6,其中在每台电脑上都会存在一个ARP的缓冲表,且这个缓
存表会存储在内存中,重启后会失效。当电脑在网络中通讯时,有些***会将自己的MAC替
换成别人的MAC地址,这样可以监听当前主机和另外一台主机的通讯
显示:可以用PING命令来显示主机的物理地址和逻辑地址(默认的是ICMP协议,并且有发
送包和返回包)
注:可以用arp -n 来查看逻辑地址和物理地址的对应关系
IP报头总共有32个字节
标识:在传输数据的过程中,一个TCP报文可能太大,导致一次无法传输成功,那么TCP便
会把一个打的报文打断成许多小的数据报文进行发送,在每个小的TCP报文中加入排号。对
方收到对应的数据报文时,会针对相应的排号进行数据的再次组装
A类IP:
0.0.0.0-127.255.255.255(其中0.0.0.0和127.0.0.0属于不可用的IP地址,私有IP是
1.10.0.0.0-10.255.255.255)
B类IP:
128.0.0.0-191.255.255.255(私有IP是 172.16.0.0-172.37.255.255)
C类IP:
192.0.0.0-223.255.255.255(私有IP是 192.168.0.0-192.168.255.255)
注:其中IP地址要和子网掩码相配合使用,一个A类网由于拥有的主机数太多,可以划分成多
个子网,但是子网需要消耗IP地址,划分每个子网需要消耗2个IP地址,其中每个子网都会有
专属于这个子网的子网掩码。其中子网之间进行通讯时,会将自己的子网掩码和对方的IP地
址进行相与,而且并不关心对方的IP的子网掩码
网络地址:用IP地址和子网掩码相与,便可得到的网络地址
广播地址(IP地址的最后一位):子网掩码的是1对应的IP地址不变,子网掩码是0的对应的
IP地址变成1
给主机配置临时的IP地址:ifconfig eth0 192.168.1.10 netmask 255.255.255.0
给主机配置临时网关:route add default gw 192.168.1.1
主机的解析名存放在/etc/hosts中
DNS解析器,在主机访问互联网中域名的时候需要进行名称解析
标签:icmp 运算 广播 数据 网桥 0.0.0.0 不可 mac 阶段
原文地址:https://blog.51cto.com/14163901/2372050