计算机网络学习笔记
1.《韩老师讲高校计算机网络》课程笔记
波特率和比特率的区别
以太网使用载波侦听多路访问(CSMA/CD)技术,属于半双工,长度一般不超过100m,保证信道的高利用率
以太网链路中,一帧要求至少64字节,称为最短有效帧长(通过以太网端到端往返时延2t计算得来),
凡长度小于64字节的帧都是由于冲突而异常中止的无效帧。
MAC地址可以修改,在网卡属性的高级标签页下
以太网帧中之所以没有帧结尾是因为其用的是曼彻斯特编码方式,即用上升沿和下降沿分别表示0和1,那么当没有跳变的时候就说明到帧结尾了
虚拟局域网VLAN:虚拟地将同一网段的网络划分成不同的部分,各部分自己组成的局域网叫做虚拟局域网(可以通过交换机设置)。
用途:例如将同一公司的不同部门的局域网分开,如分为财务和研发,可以防止研发部分获取财务部门的共享文件。VLAN可以跨交换机
网关就是访问其他网段时经过的路由器的接口,网关的IP地址一般设为本网段的第一个地址或最后一个地址,如192.168.1.1或192.168.1.254
网关可以想象成一个教室的门,同学们要想出去都得走这个门。
用寄快递来类比互联网比较容易理解
网络层4个协议之间的层次(Ipv4):
HTTP FTP DNS 应用层
--------------------------
TCP UDP 传输层
--------------------------
ICMP IGMP
IP 网络层
ARP
--------------------------
Ethenet ATM FrameRelay 网络接口层
--------------------------
127.0.0.x是本机的自回环地址,相当于人称代词的myself
几个特殊的地址:
127.0.0.1 本地环回地址
169.254.0.0 自动获取IP地址失败时所使用的默认地址
保留的私网地址:(不与公网链接,公司或学校内部使用)
10.0.0.0
172.16.0.0 - 172.31.0.0
192.168.0.0 - 192.168.255.0
子网掩码告诉计算机IP地址中那一部分是网络部分,哪些是主机部分。通过和IP地址的与运算获取网络地址(即所在网段),
网关一般是所在网段的第一个地址或最后一个地址,例如:
IP地址:192.168.80.123
子网掩码:255.255.255.0
网关:192.168.80.1
将子网划分成2段,掩码向后加1位;将子网划分成4段,掩码向后加2位......
计算机发送数据包时,用子网掩码对目的IP地址做“与”运算,如果是在同一网段,则直接发给目的IP(先是发ARP请求,然后目的主机会返回MAC地址,源主机用该MAC地址封装数据链路帧)
如果目的IP不在同一网段,则主机将数据发给路由器即网关(步骤是:如果主机ARP表中没有路由器IP对应的MAC地址记录,则先向网关地址发送ARP请求,获取MAC地址后疯转数据链路帧)
在数据的发送过程中,源IP和目的IP地址始终保持不变,而源MAC地址和目的MAC地址在每一个节点都会改变(重新封装)
IP地址主机部分不能全为0,全为0代表网段;也不能全为1,全为1代表广播地址
用子网掩码划分网段时,可以是等长子网划分也可以是边长子网划分
与子网划分相对的是超网,可以使更多的计算机处于同一网段,比如400个计算机在C类IP地址下想要处于同一网段,就得用超网,
即将主机部分往前扩展(子网划分是网络部分往后扩展),扩展后的网段地址是:将主机位归零后的地址,子网的网段地址也是一样。
子网和超网划分的时候就不再将IP地址考虑成4个8位了,而应该从整个IP地址有32位的角度来划分
IP地址和MAC地址的作用:
IP地址决定了数据从谁最终发送给谁;MAC地址决定了下一跳跳到哪里(每跳一次源MAC和目标MAC都变)。还是可以用快递来类比:
从长春寄快递到广州,源IP地址是长春,目标IP地址是广州;而最开始时,源MAC地址是吉大南岭中通,目标MAC地址是北京中通,假如下一次跳转到广州中通,则源MAC地址变为
北京中通,目标MAC地址变为广州中通。在此过程中,长春中通(发送端)首先看一下目的地(目标IP)发现不在长春市内(不在本网段),然后经过查询,
P2P终结者和网络执法官等软件都是通过ARP欺骗来控制同一网段的其他主机的流量和通信,可以通过安装ARP防火墙来防御
网关就是默认路由
ping命令用的是ICMP协议
pathping可以跟踪路径
动态路由协议:
RIP:最早,每30秒周期性广播,使各路由器之间相互获取各自的连接信息(所在网段、到某网段的跳数)
OSPF:包含三个表——邻居表、hello表和链路状态表,通过带宽来规划最短路径,划分两级区域——主干区域和自治区域,自治区域内部的路由之间不会进行路由信息交换
(否则全国甚至全世界的路由器都进行信息交换,数据量过大且较为混乱),只交换自治区域出入口的路由信息(就好像整个区域变成一个路由器),以上是自己的理解。。
外部网关协议(BGP协议)
用于连接不同的自治系统,使每个自治系统能够选择路径。每个自治系统会选择一个发言人
windows上,route print可以查看路由表
NAT网络地址转换:比如在学校使用的内网地址是10.x.x.x,在访问公网时,目标ip是公网地址,数据可以到达,但是无法从公网返回数据,因为10.x.x.x属于内网地址,
公网不知道该怎么走,所以也就无法上网。因此发送数据时使用NAT将内网地址转换成公网地址,返回数据是再转换回内网地址。
PAT端口地址转换:内网中多个主机在上网时可能走的是同一个出口到公网,此时如果使用的端口号(源端口号)相同,那么公网返回来的数据就会不知道该给谁,为了
解决端口号冲突的问题,PAT将源端口号设置为没有重复的端口号以解决此问题。
NAT并不能节省IP地址,结合PAT使用就能够节省IP地址,基于此,IPv4才能坚持到现在而不至于IP地址不够用
netstat -n 查看网络连接
IGMP协议:管理多播成员
传输层TCP和UDP协议的特点
TCP:分段、编号、流量控制、建立会话
UDP:一个数据包就能完成数据通信 不建立会话
应用层协议实际上就是传输层协议(TCP/UDP)+端口号
例如:http——TCP+80、ftp——TCP+21、DNS——UDP+53或TCP+53
使用使用层服务时,比如接受邮件,对方通过IP地址定位计算机,之后按照端口来定位服务
端口可以由应用修改
TCP协议是全双工通信,就像下载时也要有上传,上传用来回应状态。
TCP可靠传输的原理
(1)停止等待协议,对方超时没有回应,则进行超时重传
--------------------------------------------------------------------------------------------------------------------------------------------
2.B站湖科大教书匠《Cisco Package Tracer仿真实验》笔记
(1)交换机的ARP表和MAC地址表
(2)IP数据报的发送及转发流程、路由表、ARP表的作用...
结合图来看,假设左上主机192.168.16.1要ping一下右上主机192.168.16.201,则整个过程如下:
注:一次ping相当于传输4次ICMP报文
1.源主机首先根据目的IP地址判断目的主机是否与自己在同一个网段,具体做法是:
用目的IP和自己的子网掩码做与运算获取目的IP的网络地址(即网段),然后再用自己的IP和
自己的子网掩码做与运算获取本机的网络地址,最后比较两个网络地址是否相同:
(1)若相同,则说明在同一个网段内(右边主机),这时由于源主机内还没有目标
主机的MAC地址,因此无法封装数据帧(数据链路层),因此要发送一个ARP广播请求,交换机对
该ARP数据帧进行广播,到达下面的路由器后由于ARP中的目的IP并不是自己,因此ARP丢掉;而右边
主机发现ARP中的目的IP是自己,说明有人在询问自己的MAC地址,因此回复ARP响应帧,告诉对方
自己的MAC地址。(注意:交换机在接收到源主机的ARP广播后,进行两个操作:登记和转发,登记
的是源主机的MAC地址及对应的交换机端口号——即更新MAC地址表;而目的主机在接收到ARP请求时,
更新了ARP表——即源主机的IP所对应的MAC地址——这样在给源主机回复响应帧的时候就可以通过
其IP查表得到其MAC地址,从而进行二层数据帧的封装)。源主机收到ARP响应后,更新自己的ARP表,
这样在有了目标IP对应的MAC地址后,就可以将之前要发的ICMP报文进行封装并发送了。而在ARP发送
和响应的过程中,交换机也已经在MAC地址表中添加了源主机和目的主机的MAC与交换机端口号对应关系。
(2)若不同,则源主机需要走网关发送——即将数据报发送给默认路由,由路由器帮助转发。但此时
源主机只知道路由器的IP地址不知道其MAC地址,因此需要发送ARP请求(跟(1)中情况一样),因此
通过交换机发送广播,得到路由器的MAC地址,从而也就更新了源主机的ARP表,与此同时路由器的ARP表
中也添加了源主机的IP与MAC地址对应关系。之后源主机对ICMP报文进行封装发送给路由器,此时报文中
IP是192.168.16.1和192.168.16.201,MAC地址是0002.1642.6D86和00D0.FF25.8601。路由器收到数据帧后
先是解析目的MAC地址,看是不是发给自己的,若是,再解析目的IP地址,根据目的IP查询路由表,看下一条
发给哪个IP地址,经查询得到下一跳的IP是192.168.16.194,但不知道对应的MAC地址,此时又得发送ARP请求,
注意:这时路由器会丢弃ICMP报文,转而发送ARP请求,更新ARP表,此时源主机会产生一个请求超时。
2.源主机开始发送第2个ICMP报文。报文顺利到达路由器后,路由器将其解析后发给路由器2,此时
报文的IP仍然为192.168.16.1和192.168.16.201(IP地址是永远不会变的),MAC地址是0002.4A2A.2001.
路由器2收到数据帧后解析目的IP(192.168.16.201),根据目的IP查询路由表,发现是和自己的端口fa0/1直连的,
,即下一跳就是目的IP地址,但此时的问题还是不知道对应的MAC地址,因此路由器2此时需要发送ARP请求,
更新ARP表,同时丢弃了ICMP报文,于是导致源主机的第二次请求超时。
3.当源主机第3、4次发送ICMP报文时,就不会发生这种状况了。
小结:
1.交换机不涉及IP地址,只管自各接口对应的MAC地址——即交换机的MAC地址表
2.MAC地址管设备间的通信,而IP地址管线路选择(数据报在各节点的下一跳)
3.ARP表的由来:主机访问目的IP时在每一个3层节点(主机PC和路由器)都需要解析IP地址(用于查询下一跳)、
重新封装MAC地址(用于下一跳时的通信),因此每个3层节点都应该有一个根据IP地址查询MAC地址的表——即ARP表。
4.关于实验模型中的子网划分:可以学习韩老师视频第62~70讲。