网络协议和管理
-
计算机网络
:指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。-
分类 :
-
局域网
(Local Area Network;LAN) 通常我们常见的“LAN”就是指局域网,这是我们最常见、应用最广的一种网络。 -
城域网
(Metropolitan Area Network;MAN) 这种网络一般来说是在一个城市,但不在同一地理小区范围内的计算机互联。 -
广域网
(Wide Area Network,WAN) 这种网络也称为远程网,所覆盖的范围比城域网(MAN)更广,它一般是在不同城市之间的LAN或者MAN网络互联,地理范围可从几百公里到几千公里。 -
无线网
(Wireless network)指任何型式的无线电计算机网络,普遍和电信网络结合在一起,不需电缆即可在节点之间相互链接。无线电信网络一般被应用在使用电磁波的摇控信息传输系统,像是无线电波作为载波和物理层的网络。
-
-
计算机的性能指标 :
-
速率
:指连接在计算机网络上的主机在数字信道上传送数据的速率,它也称为数据率(data rate)或比特率(bit rate)。速率是计算机网络中最重要的一个性能指标。速率的单位是bit/s(比特每秒)(即bit per second)。 -
带宽
: 本指某个信号具有的频带宽度。信号的带宽
是指该信号所包含的各种不同频率成分所占据的频率范围。
在计算机网络中,带宽用来表示网络的通信线路所能传送数据的能力,因此网络带宽
表示在单位时间内从网络中的某一点到另一点所能通过的“最高数据率”。单位是“比特每秒”,记为bit/s -
吞吐量
:表示在单位时间内通过某个网络(或信道、接口)的数据量,吞吐量受网络的带宽或网络的额定速率的限制。 -
时延
:指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。① 发送时延 ② 传播时延 ③ 处理时延 ④ 排队时延
-
时延带宽积
:把以上讨论的网络性能的两个度量—传播时延和带宽相乘,就得到另一个很有用的度量:传播时延带宽积,即时延带宽积=传播时延×带宽。 -
往返时间
(RTT) :表示从发送方发送数据开始,到发送方收到来自接收方的确认(接受方收到数据后便立即发送确认)总共经历的时间。 -
利用率
:分为信道利用率和网络利用率两种。信道利用率指某信道有百分之几的时间是被利用的(有数据通过),完全空闲的信道的利用率是零。网络利用率是全网络的信道利用率的加权平均值。
-
-
-
常见的网络物理组件 :
路由器、交换机、PC机、RJ-45连接器、网络接口卡
-
物理拓扑分类:
-
逻辑拓扑
:逻辑拓扑描述了信息在网络中流动的方式 -
总线拓扑
:所有设备均可接收信号 -
星型拓扑
:通过中心点传输 ;单一故障点 -
扩展星型拓扑
:比星型拓扑的复原能力更强 -
环拓扑
:信号绕环传输 ;单一故障点 -
双环拓扑
:信号沿相反方向传输 ;比单环的复原能力更强 -
全网状拓扑
:容错能力强 ;实施成本高 -
部分网状拓扑
:在容错能力与成本之间寻求平衡
-
OSI(Open System Interconnection)模型的七层结构
-
应用层(Application) :
网络进程访问应用层 为应用程序进程提供网络服务 提供用户身份验证
-
表示层(Presentation) :
数据表示 确保接收系统可以读出该数据 格式化数据 构建数据 协商用于应用层的数据传输语法 提供加密
-
会话层(Session) :
主机间通讯 建立、管理和终止在应用程序之间的会话
-
传输层(Transport) :
传输问题 确保数据传输的可靠性 建立、维护和终止虚拟电脑 通过错误检测和恢复 信息流控制来保障可靠性
-
网络层(Network) :
数据传输 路由数据包 选择传输数据的最佳途径 支持逻辑寻址和路径选择
-
数据链路层(Data Link) :
访问介质 定义如何格式化数据以便进行传输以及如何控制对网络的访问 支持错误检测
-
物理层(Physical) :
二进制传输 为启动、维护以及物理链路定义了电气规范、机械规范、过程规范和功能规范。
PDU
PDU
:Protocol Data Unit,协议数据单元是指对等层次之间传递的数据单位- 物理层的PDU是数据位bit
- 数据链路层的PDU是数据帧frame
- 网络层的PDU是数据包packet
- 传输层的PDU是数据段segment
- 其他更高层次的PDU是消息message
三种通讯方式
- 单播
- 广播
- 组播
路由器
- 为了实现路由,路由器需要做下列事情 :
- 分隔广播域
- 选择路由表中到达目标最好的路径
- 维护和检查路由信息
- 连接广域网
路由
:把一个数据包从一个设备发送到不同网络里的另一个设备上去。这些工作依靠路由器来完成。路由器只关心网络的状态和决定网络中的最佳路径。路由的实现依靠路由器中的路由表来完成。
VLAN
- 分隔广播域
- 安全
- 灵活管理
VLAN 标签各字段含义
-
TPID
:Tag Protocol Identifier(标签协议标识符),2Byte,表示帧类型,取值为 0x8100时表示IEEE 802.1Q的VLAN数据帧。如果不支持802.1Q的设备收到这样的帧, 会将其丢弃,各设备厂商可以自定义该字段的值。当邻居设备将TPID值配置为非 0x8100时, 为了能够识别这样的报文,实现互通,必须在本设备上修改TPID值,确保 和邻居设备的TPID值配置一致 -
PRI
:Priority,3bit,表示数据帧的802.1p(是IEEE 802.1Q的扩展协议)优先级。取 值范围为0~7,值越大优先级越高。当网络阻塞时,交换机优先发送优先级高的数据帧 -
CFI
:Canonical Format Indicator(标准格式指示位),1bit,表示MAC地址在不同的 传输介质中是否以标准格式进行封装,用于兼容以太网和令牌环网。CFI取值为0表示 MAC地址以标准格式进行封装,为1表示以非标准格式封装。在以太网中,CFI的值为0 -
VID
:VLAN ID,12bit,表示该数据帧所属VLAN的编号。VLAN ID取值范围是0~ 4095。由于0和4095为协议保留取值,所以VLAN ID的有效取值范围是1~4094
TCP/IP 协议栈
-
Transmission Control Protocol/Internet Protocol 传输控制协议/因特网互联协议
-
TCP/IP是一个Protocol Stack,包括TCP、IP、UDP、 ICMP、RIP、TELNET、FTP、SMTP、ARP等许多协议
-
最早发源于1969年美国国防部(缩写为DoD)的因特 网的前身ARPA网项目,1983年1月1日,TCP/IP取代了 旧的网络控制协议NCP,成为今天的互联网和局域网的 基石和标准,由互联网工程任务组负责维护
-
共定义了四层
-
和OSI参考模型的分层有对应关系
TCP/IP 模型的五层结构
- 应用层
- 传输层
- Internet层
- 数据链路层----------->也可与物理层统称为网络访问层
- 物理层---------------->也可与数据链路层统称为网络访问层
TCP特性
- 工作在传输层
- 面向连接协议
- 全双工协议
- 半关闭
- 错误检查
- 将数据打包成段,排序
- 确认机制
- 数据恢复,重传
- 流量控制,滑动窗口
- 拥塞控制。慢启动和拥塞避免算法
- 更多关于tcp的内核参数,可参看man 7 tcp
TCP包头
-
源端口、目标端口
:计算机上的进程要和其他进程通信是要通过计算机端口的, 而一个计算机端口某个时刻只能被一个进程占用,所以通过指定源端口和目标 端口,就可以知道是哪两个进程需要通信。源端口、目标端口是用16位表示的, 可推算计算机的端口个数为2^16个 -
序列号
:表示本报文段所发送数据的第一个字节的编号。在TCP连接中所传送的 字节流的每一个字节都会按顺序编号。由于序列号由32位表示,所以每2^32个 字节,就会出现序列号回绕,再次从 0 开始 -
确认号
:表示接收方期望收到发送方下一个报文段的第一个字节数据的编号。 也就是告诉发送方:我希望你(指发送方)下次发送的数据的第一个字节数据 的编号为此确认号 数据偏移:表示TCP报文段的首部长度,共4位,由于TCP首部包含一个长度可 变的选项部分,需要指定这个TCP报文段到底有多长。它指出 TCP 报文段的数 据起始处距离 TCP 报文段的起始处有多远。该字段的单位是32位(即4个字节为 计算单位),4位二进制最大表示15,所以数据偏移也就是TCP首部最大60字节 -
URG
:表示本报文段中发送的数据是否包含紧急数据。后面的紧急指针字段(urgent pointer)只有当URG=1时才有效 -
ACK
:表示是否前面确认号字段是否有效。只有当ACK=1时,前面的确认号字段才有效。 TCP规定,连接建立后,ACK必须为1,带ACK标志的TCP报文段称为确认报文段 -
PSH
:提示接收端应用程序应该立即从TCP接收缓冲区中读走数据,为接收后续数据腾出空 间。如果为1,则表示对方应当立即把数据提交给上层应用,而不是缓存起来,如果应用程序 不将接收到的数据读走,就会一直停留在T