admin管理员组

文章数量:1530029

目录

一、名词解释 

二、OSI参考模型

三、端口号

四、TCP原理

4.1、三次握手

4.2、窗口滑动

4.3、四次挥手

五、ARP原理

5.1、原理

5.2、冲突检测

六:ICMP协议

6.1、ping

6.2、tracert

七、IP地址规划        


一、名词解释 

        网线:电信号,双绞线(以太网线),八根铜芯,两两绞在一起,最大1000M

        光纤:光信号,1000M—更大

        光猫:光转电

        hub:半双工,最大10Mbps

        交换机:全双工,100Mbps—万兆

        单播:PCA发送至PCB

        广播:泛洪(向所有活跃端口转发)

        广播域:广播报文所能传播的范围

        路由器:隔离广播域(一个路由的不同接口不能处于同一广播域,如在,规划错误)

A—SW—R—SW—C

        |

        B

        A—C:只能单播通信,不能广播通信

        A—B:既能单播通信,又能广播通信

        MAC地址:全球唯一,能证明你是谁(身份证)

        IP地址:指明主机所在哪个广播域的哪个位置,能让别人知道你在哪(位置)

        只要做好了网络规划,无论广播域内的交换机和计算机如何改变,广播域都是固定不变的,所以设计网络是给广播域规划IP地址段,而不是给计算机等设备规划IP地址。(广播域比作班级,计算机交换机比作屋内的学生)

        同一广播域中,两个主机基于MAC地址通信,非同一广播域,两个主机基于IP地址通信,那么,同一广播域下的计算机互相通信过程中,IP地址有什么作用?

        通过对比目的IP与网关IP的关系来判断计算机A与计算机B是否处于同一广播域中,如在,则基于MAC地址通信。

        网关(网络关口):路由器众多接口中连接某一广播域的固定接口,该广播域内的设备想要与其他广播域设备通信都需要通过该接口,即网络关口。(网关比作班主任,网关是配置在主机上的)

        局域网:LAN;城域网:MAN;广域网:WAN(因特网,教育网,政务网,银行等)。

         如果一个企业前期有10台PC,买了SW1带10个PC,后期发展又买了SW2带20个PC,再发展又买了SW3带10个PC,再发展又买了SW4带10个PC,安装下图的连接方式会存在一个问题,SW2与SW3需要承载SW1下 的PC与SW4下的PC通信的流量,而在购买SW2和SW3时考虑的是其直连的PC的流量,所以要采用树形结构,分为接入层、汇聚层、核心层。                 

网口—SW1—SW2—SW3—SW4

             |           |          |          |

          10台     20台   10台    10台

二、OSI参考模型

        通信的终极目的是将数据从A运送到B,也就是从源地址运送至目的地址,但是数据本身产生的时候是没有源和目的信息的,因此在传输之前我们需要为数据加上源目的信息、传输的方式等一系列用来保障正常传输的协议。

        如何来保证在PCA发出数据之前增加的这些协议到达PCB之后他能够读懂呢?就需要制定一个全球唯一的标准,即OSI参考模型(物数网传会表应)。

上三层:应用程序

        7-应用层:应用程序,人类与虚拟网络(计算机)交互的工具,将文字、图片、视频等信息输入到电脑中。

        6-表示层:文字、图片、视频等信息通过应将用程序输入到电脑中,需要进行数字化,将数据转换成某种格式。

        5-会话层:确保会话不会出现偏差。A通过微信发给B的信息不会发送至C处,也不会发给B的QQ账号。

下四层:数据

        4-传输层:在传输层实现端到端(端口号,应用程序)的连接定义消息是采用可靠方式/不可靠方式传递。

                可靠方式:由计算机判断信息对方是否收到,若对方未收到,计算机自动重传,如:下载文件,聊天等。

                不可靠方式:由人判断信息是否收到,如:语音。

        3-网络层:网络寻址。封装源、目的IP。在网络层实现的是主机到主机(ip到ip)的通信。

        2-数据链路层:封装源、目的MAC,并将数据封装成帧。

        1-物理层:物理传输介质,电缆:将数据包转换成高低电平通过介质传输;光纤:将数据包转换成光的强弱通过介质传输;

封装:由上到下,先封IP后封MAC;        解封装:由下往上,先解MAC后解IP

     

        二层交换机(二层转发):数据报文传输到交换机,解封到MAC地址为止,不会解封到三层IP地址。

        如上图,数据包发送至交换机后,交换机解封到MAC层后,发现目的mac并不是交换机本身的mac,其不会再解封IP层,而是根据目的mac:B转发出去(过程类似上课传纸条)。

        路由器(三层转发):根据IP地址转发

        路由器外网WAN接口是独立的,因此有一个独立的MAC地址;其余内部LAN接口是由所连接的计算机网卡的MAC地址决定

思考:如上图,目的MAC写多少?

        如果写B,那么数据包发送至交换机处,交换机解封装到MAC层,发现目的mac:B并不在交换机地址表中,该包丢弃。(因为路由器隔离了广播域,交换机泛洪也无法获取到mac:B)

        如果写P,那么数据包发送至交换机处,交换机解封装到MAC层,发现目的mac:P,交换机会将该包发送至路由器端口处(因为端口P与A处在同一广播域,该步骤即找网关),路由器收到该包解封装发现目的mac是P,继续解封装到目的ip:2.1,然后通过ip2.1发送至其所在的广播域。

思考:如上图,目的MAC如果写B,数据包能否传输至B处?

        不能!路由器作用:通过目的IP找到其所在的广播域(寻址),其无法通过mac地址找到对方。所以该包到达路由器会丢弃。

应用层TelnetFTPTFTPSNMP
HTTPSMTPDNSDHCP
传输层TCPUDP
网络层IP
数据链路层PPPoE
EernetPPP
物理层.......

        HTTTP:超文本传输协议

        FTP:文件传输协议(需账号密码)

        TFTP:简单的文件传输协议(不需账号密码)

        Telnet:远程登录       

        SSH:加密的远程登录

        SNMP:网管协议,设备监控、告警等

        SMTP:邮件传输

        DNS:域名解析

        DHCP:自动分配IP

        TCP:可靠协议,有三次握手、确认和重传机制

        UDP:不可靠协议        

        PPPoE:宽带接入

        数据经过传输层封装后为数据段,经过网络层封装后为数据包,经过数据链路层封装为数据帧,当数据变为01二进制后,称为比特流

       1Byte=8bit

        100M:100Mbps—每秒传输100Mbit流

        下载文件的速率是字节,也就是12.5MB/S

 在传输速率中,1Kb=1000bps(不是1024)

三、端口号

        端口号:计算机/服务器中应用程序的编号,用于指明上层应用程序。

        拿Http来说,对人类来说,它叫超文本传输协议,对计算机来说,它就是80端口。

        除了行业默认的端口号,如果服务端的端口号随机设置,需要告知客户端

        通常所讲,通过ip地址实现两台PC互相ping通只是能够进行通信,但是计算机中安装了很多应用程序,如果不对这些应用程序加以区分,那么就无法实现QQ与QQ之间的定向通讯,而区分的标志就是端口号。

        因此,通过ip+端口号在两台计算机之间建立的连接,不再仅是计算机与计算机的连接,而是一个端口到另一个端口的连接,即端到端的连接。

        如果是C/S(客户端/服务器)架构,发起流量的是客户端,所以,源端口(客户端端口)可随机,而目的端口由服务端应用指定,会设置一些公用端口,如HTTP固定80,HTTPS固定443。

        8080端口:为了避免被外界攻击,所以有些企业会对外关闭80端口,对外发布为8080端口,但是客户端访问http还是自动默认为访问80端口,此时,需以“ip地址:8080”的形式访问。

四、TCP原理

4.1、三次握手

        TCP:可靠协议,因此需要“三次握手”建立可靠连接,是一次双方在线,即时通讯的连接,称为面向连接(仿佛面对面谈话)。

        非实时的业务,用于网页、下载

        分为三大步:

  1. 建立连接
  2. 传输数据
  3. 断开连接

        三次握手(置位:通过标记位的置1来表达)

  1. A向B发起同步请求(SYN)
  2. B收到后确认消息(ACK)同时向A发起同步请求(SYN)
  3. A收到后向B发送确认消息。

        TCP发送数据是一段一段进行传输,为确保通信质量,需要添加确认机制(序号和确认号),如A与B通信,A发送到B的数据段包含A至B数据段序号(如100,下一段数据自动顺延+1)和确认号(B至A数据段序号+1),但是每发一段数据对端就确认一次的话,会出现“A:(B回复:收到)(B回复:收到)(B回复:收到)(B回复:收到)(B回复:收到)(B回复:收到)”的情况。

        为了避免上述情况,采用传输多个数据段(参数win=数据段数量)再统一确认(ACK=序号+数据段数量+1)的机制,即窗口滑动机制,如果中间丢了一个数据段,则该从该数据段起以后则舍弃(如序号100,一次性发送20个段,15段丢失,则ACK=100+1+14)。

4.2、窗口滑动

        窗口滑动机制(参数win,如win=3,则三个窗口同时发送)为试探机制,假如win=3稳定传输一段时间之后,对方每次都能确认,就意味着可以尝试采用更大的窗口传输,但是突然到了某个峰值之后,发现对方回复的确认消息开始丢包,那就再试几次,试几次之后确实丢包,那么窗口大小就需要减少。例如下载文件时,初始速率比较小,越来越大,到达一个峰值后变小,最后稳定在一个大致范围。

4.3、四次挥手

  1. A向B发送结束请求(FIN)
  2. B回复确认消息(ACK)
  3. B向A发送结束请求(FIN)        
  4. A回复确认消息(ACK)

        为什么第二步和第三步不能同时?

        因为A和B结束通信不一定同时。

UDP

        A向B发数据,有序号,没有确认号

        实时的业务,用于直播、微信视频 

五、ARP原理

5.1、原理

        ARP(地址解析协议),二层协议通过ip地址请求mac地址

        注:ARP请求是一个广播请求,也就是说,只能在同一广播域发起请求

        在PC的cmd中输入apr -a可看到缓存表(ip地址与mac地址的对应关系

        在第一次通信时(即PCA和PCB中都没有arp缓存表),当管理员要在A设备上ping1.2,此时PCA判断源ip和目的ip处于同一广播域,但其不知道PCB的mac(内容中的目的mac用全0表示),就需要ARP来协助,PCA会在ping数据包之前发起一次ARP请求(注意:ARP数据包是不封装三层的,直接封装在二层上,目的mac为FF默认表示该数据为广播帧),交换机解封后会泛洪到B,B解封装后发现自己是1.2会单播返回A一个arp应答(我是1.2,我的mac是B)。当广播帧到达PCB后,B根据消息建立arp表(1.1的mac为A),当B单播报文到达A后,A根据消息建立arp表(1.2的mac为B),此时,A发起的单播ping数据包的目的mac为B。

请问:交换机在这个过程中会不会建立arp表?

        不会!因为当A的广播帧到达交换机时,交换机只会解封到二层发现目的mac是广播地址后泛洪(交换机建立mac表:mac和交换机端口的对应关系),不会解封二层以上的内容,同理,当B的单播帧到达交换机后,交换机解封到二层发现目的mac是A后转发至A,不会解封二层以上的内容,所以不会建立arp缓存表。

如果中间多个路由器,路由器会不会建立arp表?

        会!因为路由器隔离广播域,arp请求包(此时源mac是A,目的mac是网关)需要先到达网关(此时路由器解封二层三层即可知道源ip1.1对应的源mac为A),然后通过转发到1.2的广播域才能找到B,同理,B返回单播arp应答包也是如此。

        如上图,在第一次通信时,PCA先判断源ip和目的ip处于不同广播域,那么其arp请求会找网关1.2的mac,通过arp广播请求获取到1.2的mac为P后,此时,A发起的单播ping数据包的目的mac为P。

5.2、冲突检测

        配置ip的主机开机自动发起一次arp请求,请求的目的ip为自己,如有回复,则有冲突。

六:ICMP协议

6.1、ping

        ping测,回声请求和回声应答,都为单播(要一去一回才能用,不能光有去无回

        TTL:生存时间(跳数),初始值自拟,最大255,每经过一个广播域-1,如果TTL到0,就会超时丢弃,用来防止环路和追踪(tracert)。        

6.2、tracert

        tracert原理( tracert -d ip地址)

        如右侧,PCB地址为1.2,PCA—R1—R2—R3—PCB

        当PCA tracert1.2时:

        第一步:将TTL设置为1,数据包到达R1后,TTL=0,此时,R1回复超时(内容包含R1的ip地址)

        第二步:将TTL设置为2,数据包到达R2后,TTL=0,此时,R2回复超时(内容包含R2的ip地址)

        第三步:将TTL设置为3,数据包到达R3后,TTL=0,此时,R3回复超时(内容包含R3的ip地址)

        注:回复加*的即为设置策略不让追踪

七、IP地址规划        

        设计网络是给广播域规划IP地址段,而不是给计算机等设备规划IP地址。(广播域比作班级,计算机交换机比作屋内的学生)

        每个路由器的一个接口都连接一个独立的广播域。

        IPv4,32bit,点分十进制,地址范围0.0.0.0~255.255.255.255:

        网络部分:前三位

        主机部分:后一位

        192.168.2.0/24:

               /24表示前24位是网络位;

               后8位为主机位:代表0-255个主机=256=2的8次方;

               网络号:代表广播域,主机位全为0,即192.168.2.0/24,不能给路由器和计算机配置;

               广播地址:主机位全为1192.168.2.255/24,不能给路由器和计算机配置;

               可用主机地址:2的(32-24)次方-2。

思考:172.16.10.1/16和172.16.20.1/16是不是同网段,网络号和广播地址分别为多少?        

        是。网络位:前16位;主机位:后16位,所以共有2的(32-16)次方=65536个IP,可用主机:65534;网络号:172.16.0.0/16;广播地址:172.16.255.255/16。

        计算机无法理解/24或者/16这种表述,所以引入子网掩码帮助计算机理解网络位有多少(网络位为1,主机位为0)。

        192.168.2.0/24—子网掩码:255.25.255.0

        172.16.0.0/16—子网掩码:255.255.0.0

        172.16.0.0/25—子网掩码:255.255.128.0

        特殊地址

        255.255.255.255,广播地址,受限于网关

        0.0.0.0,任意地址,任何网络的网络地址

        127.0.0.0/8,环回地址,测试本机IPv4地址是否可用

        169.254.0.0/24,本地链路地址,主机自动获取地址失败后,可用改地址临时通信                

       封装的IP头部:20字节,包含版本、服务类型、总长度、ID、标记(flag)、分片(标记偏移)、TTL、协议号和头部校验。

        协议号:指明网络层上层的协议类型(TCP6;UDP17)        

        数据包分片,单个包最大传输单元(MTU)1500字节,超出MTU设置值需要切分。

        如:同一数据包发送前被分成两片,接手方需要将其组合,两片要设置为同一ID,flag表示谁在前谁在后。

        

      

本文标签: 基础知识TCPip