美文网首页Linux初学者学习笔记
20170814 网络管理(一)

20170814 网络管理(一)

作者: 哈喽别样 | 来源:发表于2017-08-20 17:37 被阅读4次
  • 网络基本概念
  • OSI网络分层模型
  • 网络设备
  • TCP/IP协议栈

一、网络基本概念:

  • 网络应用程序对网络的影响

    • 批处理程序,无需人机交互,带宽很重要
    • 交互应用程序,人机交互频繁,响应很重要
    • 实时应用程序,人与人的交互,端到端的延时很重要
  • 网络的特征:速度、成本、安全性、可用性、可扩展性、可靠性、拓扑

  • 网络的物理拓扑:描述了物理设备的布线方式

    • 总线拓扑:所有设备均可接收信号
    • 环状拓扑:信号绕环传输、单一故障点
    • 星型拓扑:通过中心点传输、单一故障点
    • 网状拓扑:容错能力强、实施成本高
  • 网络的逻辑拓扑:描述了信息在网络中的流动方式

二、OSI网络分层模型:

  • 网络分层的意义:降低复杂性、标准化接口、简化模块化设计、确保技术的互操作性、加快发展速度、简化教学

(一)OSI模型的七层结构:

  • 物理层:为启动、维护以及关闭物理链路定义了电气、机械、过程和功能规范,负责二进制信息的传输
  • 数据链路层:定义如何格式化数据以便进行传输以及如何控制对数据的访问,支持错误检测,用MAC地址访问介质
  • 网络层:路由数据包,支持逻辑寻址和路径选择,负责提供逻辑地址
  • 传输层:可靠与不可靠的传输,错误检测和恢复,信息流控制来保障可靠性
  • 会话层:建立、管理、终止应用程序之间的会话,负责主机间的通信
  • 表示层:构建、格式化数据,负责数据表示
  • 应用层:为应用程序进程提供网络服务,提供用户身份验证

(二)数据的封装、解封、对等通信

  • 封装:发送端数据从应用层向下每经过一层添加相应的报头,在数据链路层同时增加报头和校验信息,通过物理层将二进制信息传输至接收端

  • 解封:从接收端物理层接收到数据后,在数据链路层删除报头和校验信息,向上每一层删除相应的报头,最终获得发送端发来的数据

  • PDU(协议数据单元):对等层次之间传递的数据单位

    • 物理层的PDU: bit 数据位
    • 数据链路层的PDU: frame 数据帧
    • 传输层的PDU: packet 数据包
    • 网络层的PDU: segment 数据段
    • 更高层次的PDU: message 消息

(三)三种通讯模式:单播、广播、组播

  • 单播:主机间“一对一”通信
  • 广播:主机间“一对所有”通信
  • 组播:主机间“一对一组”通信

三、网络设备:

(一)网络线缆和接口

  • 非屏蔽双绞线UTP (unshielded twisted-pair cable)
    • T568A:绿白、绿、橙白、蓝、蓝白、橙、棕白、棕
    • T568B:橙白、橙、绿白、蓝、蓝白、绿、棕白、棕
    • 100M实际使用12/36组线
    • 1000M实际使用12/36/45/78组线
    • 接头:RJ-45
  • UTP直通线和交叉线
    • 直通线:线缆两端接头排线遵循相同线序(两端都是T568A或者T568B)
    • 交叉线:线缆两端接头排线各遵循T568A和T568B两种标准之一(一端为T568A,则另一端必须为T568B)
    • 同类设备相连用交叉线,不同类设备相连用直通线,但现在都能够自动识别并翻转,交叉线使用情况变少

(二)网络适配器(网卡)

  • 现在的网卡都是以太网卡

  • 以太网应遵循802.3标准,由于802.3标准的帧结构存在缺陷,目前以太网第二代(Ethernet II)中没有使用完全按照标准要求的帧格式

  • 以太网帧格式:

    • 前导码(preamble):8Byte
    • 目的MAC地址:6Byte
    • 源MAC地址:6Byte
    • 类型:2Byte
    • 数据:46-1500Byte
    • 帧校验序列:4Byte
  • MAC地址格式:

    • 高24位:IEEE给不同厂商分配的代码,称为组织唯一标识符
    • 低24位:各厂商自行分配,称为扩展标识符
  • CSMA/CD 冲突检测的载波侦听多路访问

    • 传统以太网中共享传输介质,使用此技术
    • 工作方式:先听后发,边发边听,冲突停发,随机延迟后重发

(三)集线器(Hub)

  • 工作于物理层

  • 采用广播方式转发,所有端口在一个冲突域中

  • 工作特点:共享带宽、半双工

(四)交换机

  • 工作于数据链路层

  • 通过端口隔离了网络冲突域

  • 工作特点:每个端口占一个带宽,一般工作在全双工模式下

  • 交换机监听数据帧中源MAC地址,学习MAC,建立MAC表

  • 对于未知MAC地址,交换机将转发到除接收该帧的端口之外的所有端口

  • 当交换机接到一个数据帧时,如果该帧的目的位于接收端口所在网段上,它就过滤掉该数据帧;如果目的MAC地址在位于另外一个端口,网桥就将该帧转发到该端口

  • 当交换机接到广播帧时候,它立即转发到除接收端口之外的所有其他端口

(五)路由器

  • 分割广播域

  • 选择路由表中到达目标的最佳路径

  • 维护和检查路由信息(路由表)

  • 链接广域网

(六)虚拟局域网

  • 特点:分割广播域、安全、灵活管理

  • 按照端口分组划分

四、TCP/IP协议栈

  • TCP(Transmission Control Protocol): 传输控制协议
    IP(Internet Protocol): 因特网互联协议

  • TCP/IP是一个协议栈,包括TCP、IP、UDP、ICMP、RIP、TELNET、FTP、SMTP、ARP等许多协议

(一)TCP/IP协议栈

  • 分层结构,共定义了四层:网络访问层、Internet层、传输层、应用层

  • 与OSI参考模型的对应关系

    • OSI模型物理层和数据链路层合并为TCP/IP中的网络访问层
    • OSI模型网络层改称TCP/IP中的Internet层
    • OSI模型传输层在TCP/IP中不变
    • OSI模型会话层、表示层、应用层合并为TCP/IP中的应用层

(二) TCP/IP协议的应用层:

FTP、SMTP、Telnet、SNMP、DNS等协议

(三) TCP/IP协议的传输层:

  • 传输层主要负责工作:多路会话、成段、流量控制、面向连接、可靠连接,后三项视具体协议能否提供相应功能
(1) TCP协议:
1.TCP协议的特点:
  • 工作在传输层,面向连接协议

  • 全双工协议

  • 半关闭

  • 错误检查

  • 将数据打包成段,排序

  • 确认机制

  • 数据恢复,重传

  • 流量控制,滑动窗口

  • 拥塞控制,慢启动和拥塞避免算法

2.TCP首部结构:20-60字节
  • 源端口、目标端口:通过端口进行进程间通信,源端口、目标端口用16位表示,可推算计算机的端口个数为2^16个

  • 序列号:表示本报文段所发送数据的第一个字节的编号。在TCP连接中所传送的字节流的每一个字节都会按顺序编号序列号由32位表示

  • 确认号:表示接收方期望收到发送方下一个报文段的第一个字节数据的编号,由32位表示

  • 数据偏移:表示TCP报文段的首部长度,共4位,由于TCP首部包含一个长度可变的选项部分,需要指定这个TCP报文段到底有多长。它指出TCP 报文段的数据起始处距离TCP 报文段的起始处有多远。该字段的单位是32位(即4个字节为计算单位),4位二进制最大表示15,所以数据偏移也就是TCP首部最大60字节

  • ACK:表示前面的确认号字段是否有效。ACK=1,表示有效。只有当ACK=1时,前面的确认号字段才有效。TCP规定,连接建立后,ACK必须为1,带ACK标志的TCP报文段称为确认报文段

  • SYN:在建立连接时使用,用来同步序号。当SYN=1,ACK=0时,表示这是一个请求建立连接的报文段;当SYN=1,ACK=1时,表示对方同意建立连接。SYN=1,说明这是一个请求建立连接或同意建立连接的报文。只有在前两次握手中SYN才置为1,带SYN标志的TCP报文段称为同步报文段

  • FIN:表示通知对方本端要关闭连接了,标记数据是否发送完毕。如果FIN=1,即告诉对方:“我的数据已经发送完毕,你可以释放连接了”,带FIN标志的TCP报文段称为结束报文段

  • 窗口大小:表示现在充许对方发送的数据量,也就是告诉对方,从本报文段的确认号开始允许对方发送的数据量,用16位表示

3.端口:16位表示,表示范围0至65535
  • 0-1023:系统端口或特权端口(仅管理员可用),永久的分配给固定的系统应用使用,如:22/tcp(ssh), 80/tcp(http), 443/tcp(https)

  • 1024-49151:用户端口或注册端口,分配给程序注册为某应用使用,如:
    3306/tcp(mysql), 11211/tcp/udp(memcached)

  • 49152-65535:动态端口或私有端口,客户端程序随机使用的端口
    linux系统动态端口范围的定义:cat /proc/sys/net/ipv4/ip_local_port_range

4.TCP三次握手

说明:
(1)客户机初始化TCP连接,向服务器发送一个SYN=1请求
(2)服务器创建一个侦听套接字,进入LISTEN状态
(3)服务器接收到SYN,发送SYN=1和ACK=1同意连接请求
(4)客户机接收到服务器发送的SYN和ACK,进入ESTABLISHED状态,并回复服务器ACK=1
(5)服务器接到客户机的ACK进入ESTABLISHED状态,客户机和服务器成功连接,开始传送数据

5.TCP四次挥手

说明:
(1)客户机进程准备关闭连接,向服务器发送一个FIN=1请求,进入FINAL-WAIT-1状态
(2)服务器接收到FIN后,进入CLOSE-WAIT状态,回复客户机ACK=1确认关闭连接,并通知应用进程
(3)客户机接收到服务器的ACK后,进入FINAL-WAIT-2状态
(4)服务器进程同意关闭连接,进入LAST-ACK状态,并向客户机发送FIN=1和ACK=1请求关闭连接
(5)客户机接收到服务器的FIN和ACK后,进入TIME-WAIT状态,向服务器发送ACK=1,并在一定时间后自动进入CLOSED状态
(6)服务器接收到LAST-ACK后,进入CLOSED状态

6.有限状态机
  • CLOSED 没有任何连接状态

  • LISTEN 侦听状态,等待来自远方TCP端口的连接请求

  • SYN-SENT 在发送连接请求后,等待对方确认

  • SYN-RECEIVED 在收到和发送一个连接请求后,等待对方确认

  • ESTABLISHED 代表传输连接建立,双方进入数据传送状态

  • FIN-WAIT-1 主动关闭,主机已发送关闭连接请求,等待对方确认

  • FIN-WAIT-2 主动关闭,主机已收到对方关闭传输连接确认,等待对方发送关闭传输连接请求

  • TIME-WAIT 完成双向传输连接关闭,等待所有分组消失

  • CLOSE-WAIT 被动关闭,收到对方发来的关闭连接请求,并已确认

  • LAST-ACK 被动关闭,等待最后一个关闭传输连接确认,并等待所有分组消失

  • CLOSING 双方同时尝试关闭传输连接,等待对方确认

7.TCP超时重传
  • TCP为每一个报文维护一个重传定时器,报文发送时开启计时,若超过时间未有应答,则重发报文并将计时器时间重置

  • TCP重传策略:下次重传时间如何选择,最多执行多少次重传

    • 与TCP超时重传相关的两个内核参数:
cat /proc/sys/net/ipv4/tcp_retries1   //指定在底层IP接管之前TCP最少执行的重传次数,默认值是3
cat /proc/sys/net/ipv4/tcp_retries2   //指定连接放弃前TCP最多可以执行的重传次数,默认值15(一般对应13~30min)
8.TCP固定窗口和滑动窗口
  • 固定窗口:每次发送的报文数量相同

  • 滑动窗口:接收方会告诉发送方下次发送的报文数量

9.TCP拥塞控制
  • 功能:提高网络利用率,降低丢包率,并保证网络资源对每条数据流的公平性

  • 拥塞控制的四个部分:慢启动(slow start)、拥塞避免(congestion avoidance)、快速重传(fast retransmit)和快速恢复(fast recovery)

  • linux当前使用的拥塞算法:cat /proc/sys/net/ipv4/tcp_congestion_control

(2)UDP(User Datagram Protocol)协议 :
1.UDP协议的特点
  • 工作在传输层

  • 提供不可靠的网络访问

  • 非面向连接协议

  • 有限的错误检查

  • 传输性能高

  • 无数据恢复特性

2.UDP首部结构
  • 源端口:16位

  • 目的端口:16位

  • 数据报长度:16位

  • 校验值:16位

(四)TCP/IP协议的Internet层

  • Internet层的主要协议:

    • IP(Internet Protocol)

    • ICMP(Internet Control Message Protocol):报告错误、交换受限控制和状态信息

    • ARP(Address Resolution Protocol) :根据IP地址获取MAC地址

    • RARP(Reverse Address Resolution Protocol):根据MAC地址获取IP地址

相关文章

  • 20170814 网络管理(一)

    网络基本概念OSI网络分层模型网络设备TCP/IP协议栈 一、网络基本概念: 网络应用程序对网络的影响批处理程序,...

  • #20170814

    #20170814 你……还好吗

  • GTD周检视8.14-8.20

    【周检视】 20170814-0820 3个目标完成情况: 1.读书《活着》读到100页 2.英语网络单元+打卡 ...

  • 20170814

    半个月快过去啦!今天抓紧时间搞第四章了! 还是把昨天的后处理结果出掉 13:37 明确了两个涡的方向 15:40之...

  • 20170814

    最近太忙了,感觉不到生活的节奏,和工作的步骤。一直穿梭在交警,派出所,法院,银行。人生从来没有经历的事情都经历过,...

  • 20170814

    雅思课程的倒数第四次课,也是我暑假嘉兴上海两地跑的倒数第四天。 地铁上,便是在知乎上打发着时间,偶然看到路小疯的一...

  • 20170814

    前端使用异步的场景 定时任务:setTimeout, setInverval 网络请求:ajax请求,动态 加载 ...

  • 20170814

    晨读感悟 说话的温度 说话还有温度,头一次听说。然后根据说话的温度,还能决定你的人身度。 仔细想想还真是这么回事。...

  • 20170814

    跟进顾客,续订完成70.%明天继续跟进剩下的顾客 学习_成功要领。 相信相信的力量,金钱只是一个想法,成功的人永不...

  • 20170814

    当朋友有男朋友,有老公,有小孩,当身边这些除了家人就是最亲密的人,都有了更亲密的存在,当话题渐渐的分散,我接不住朋...

网友评论

    本文标题:20170814 网络管理(一)

    本文链接:https://www.haomeiwen.com/subject/ghyprxtx.html