TCP/IP |网络基础知识(OSI模型等)|TCP/IP基础知识|数据链路|IP协议|IP协议相关技术|TCP与UDP|路由协议|应用协议|网络安全

TCP/IP

文章目录

      • TCP/IP
    • @[toc]
        • 一、网络基础知识
          • 1.1计算机网络出现的背景
          • 1.2计算机与网络发展的7个阶段
          • 1.3协议
          • 1.4协议制定者
          • 1.5协议的分层
          • 1.6OSI参考模型(极其重要)
          • 1.7传输方式的分类
          • 1.8地址
          • 1.9网络的构成要素
          • 1.10现代网络初态
        • 二、TCP/IP基础知识
          • 1TCP/IP出现的背景及其历史
          • 2TCP/IP的标准化
          • 3互联网基础知识
          • 4TCP/IP协议分层模型
          • 5TCP/IP分层模型与通信示例
        • 三、数据链路
        • 四、IP协议
          • 1IP即网际协议
          • 2IP基础知识
          • 3IP地址的基础知识
          • 4路由控制
          • 5IP分割处理与再构成处理
          • 6IPv6
          • 7IPv4首部
          • 8IPv6首部格式
        • 五、IP协议相关技术
          • 1仅凭IP无法完成通信
          • 2DNS
          • 3ARP
          • 4ICMP
          • 5DHCP
          • 6NAT
          • 7IP隧道
          • 8其他IP相关技术
        • 六、TCP与UDP
          • 1传输层的作用
          • 2端口号
          • 3UDP
          • 4TCP
          • 5其他传输层协议
          • 6UDP首部的格式
          • 7TCP首部格式
        • 七、路由协议
          • 1路由控制的定义
          • 2路由控制范围
          • 3路由算法
          • 4RIP
          • 5OSPF
          • 6BGP
          • 7MPLS
        • 八、应用协议
          • 1应用层协议概要
          • 2远程登录
          • 3文件传输
          • 4电子邮件
          • 5WWW
          • 6网络管理
          • 7其他应用层协议
        • 九、网络安全

前记

  1. 大二暑假第一站:TCP/IP协议簇基础
  2. 没有什么是加一层解决不了的。加一层在这里的解理:在一个复杂的层次上,抽象出两个功能点,分为两层。如IP可靠性与编程难度衡量,就是层次拆分的一个思想。

一、网络基础知识

1.1计算机网络出现的背景
  1. 主机:在TCP/IP中,只要是能够设定IP地址的计算机就叫作主机。
  2. AN:Area Netword 域网
  3. WAN:Wide 广域网
  4. MAN:Metropolitan, 城域网
  5. LAN:Local 局域网
  6. WAN > MAN > LAN
1.2计算机与网络发展的7个阶段

时间上从20世纪50年代开始,每隔10年更新一代。

  1. 批处理、多道批处理、分时系统
  2. 瘦身:把业务从一台主机,分布到“轻量”级的主机上或个人电脑上
  3. **计算机相互连接的思考:**起初是为了连接不同计算机,以提高生产力;而随着互联网的不断发展,逐渐发展成了“人与人之间的连接”,人的沟通,人的联系,人的交流。
1.3协议
  • 定义:是指计算机与计算机在实现网络通信时事先达到的一种约定(规则)
  • 对协议的思考:统一差异,相互交流。–发挥接口的作用
  • 分组交换协议:把大数据分割为一个个叫做包的较小单位进行传输的方法。头部带有标签。
1.4协议制定者

为了统一协议标准而出现。

  • ISO: international standard organization 国际标准化组织
  • OSI: open system interconnection 开放式通信系统 互联参考模型
  • ANSI: American National Standards Institute 美国国家标准学会
  • 注意:TCP/IP是IETF制定标准的,而OSI才是ISO制定的标准(包括模型)
1.5协议的分层
  • **接口:**上下层之间进行交互时所遵循的约定叫做接口
  • **协议:**同一层之间的交互所遵循的约定叫做协议
  • (其实都是规则,相对性不一样而已)

优点:

  • 简单化:通过分层,使得那些比较复杂的网络协议更加简单化
  • 明确化:更易单独实现每个分层协议,并办界定各个分层的具体责任和义务
  • 灵活化:可以构造一个扩展性和灵活性都较强的系统
  • 独立化:一层出现问题或者需要更换技术,不会影响其它层

缺点:

  • 过分模块化,使处理过程变得更加沉重
  • 每个模块有时候不得不实现相似的处理逻辑等问题
1.6OSI参考模型(极其重要)

基本概念

  • OSI参考模型只是一个模型,它只是对第一层的作用进行一系列粗略的界定,并没有对协议和接口进行详细的定义。如果要了解协议细节,就要去参考具体层实现的协议。
  • OSI协议和OSI参考模型是两个东西。一个是实现,一个是标准

各层作用(总述)

注意:第1层是从物理层算起的,称为最下层劳动人民 !

  1. 物理层:定义物理传输接口标准,传输比特流
  2. 数据链路层:进行互连设备之间的传送,转换比特流和数据帧
  3. 网络层:地址管理与路由选择,将数据传输到目标地址
  4. 传输层:管理两个终端之间的数据传输,保证数据可靠传输

  1. 会话层:通信管理,决定连接建立和断开的时机
  2. 表示层:负责设备固有数据格式与网络标准数据格式之间的转换
  3. 应用层:针对特定应用的协议

各层乱七八糟理解

  1. 应用层:电子邮件,其收件人地址等信息称为应用层头,附在要传送数据的头部
  2. 表示层:如一段文件,其编码格式(如utf-8,iso等),会作为表示层头,附在头部
  3. 会话层:如同时发送5个邮件,是采用一次连接5次发送,还是五次连接5次发送的形式,由会话层决定。头部会标记发送的顺序信息
  4. 传输层:会话层负责决定建立连接和断开连接的时机,而传输层进行实际的建立和断开处理。即会话层建立物理连接,而传输层建立逻辑连接。(逻辑连接可以理解为在一个物理连接中,再划分的虚拟连接)
  5. 网络层:负责将数据发送到最终目标地址 , 利用IP地址
  6. 数据链路层:只负责发送一个分段内的数据 ,利用MAC地址(这两个都是基于目标地址将数据发送给接收端的)
  7. 物理层:将 0 1 软件数字,转换为硬件电压和脉冲光
1.7传输方式的分类

有无连接型 分类

  1. 面向有连接型
    • 在发送数据之前,需要在收发主机之间连接一条通信线路
    • 在通信传输前后,专门进行建立和断开连接的处理
    • 可以避免发送无谓的数据
  2. 面向无连接型
    • 不要求建立和断开连接
    • 发送端可于任何时候自由发送数据(不管有没有接收端),接收端也不知何时从哪里收到数据
    • 在一些特殊场景是非常有效率的:如一对多 和 多对一 的场景

电路交换 与 分组交换

  1. 电路交换:一条线路只能有两个通信方同时使用
  2. 分组交换:通过把信息分割并附加目标信息,可在一条线路上实现多方通信

根据接收端数量分类

  1. 单播(Unicast):一对一 (cast 意为 投掷)
  2. 广播(Broadcast):一对多
  3. 多播(Multicast):一对特定多
  4. 任播(Anycast):先一对特定多,再一对一。即先单播,后多播。一年级一班(多播)的A同学(单播)
1.8地址
  1. 地址具有唯一性。
  2. 地址具有层次性
    • 目的:通过层次分类才能更加快速地定位到某一个地址
    • MAC无层次(有制造商号,产品编号等层次信息,但对寻址没有任何作用),IP有层次
  3. 寻址表
    • MAC寻址:地址转发表,根据自学自动生成
    • IP寻址:路由控制表,根据路由协议自动生成
1.9网络的构成要素

传输速率和吞吐量

  1. 传输速率
    • 两个设备之间数据流动的物理速度称为传输速率
    • 传输速率不是指单位数据流动的速度有快,而是指单位时间内传输的数据量有多少。因为光和电流的传输速度是恒定的,故数据流动的速度是相同的
    • 传输速率又称为 带宽
    • 带宽越大,网络传输能力越强。
  2. 吞吐量
    • 主机之间实际的传输速率称为吞吐量
    • 吞吐量不仅衡量带宽,同时也衡量主机的CPU处理能力、网络拥堵程序等信息

各种设备

  1. 网卡(NIC卡):Network Information Center:任何一台计算机连接网络时,必须要使用网卡。也称为网络适配器、网络接口卡、LAN卡。
  2. 端口:计算机与外部连接的接口称为计算机端口
  3. 中继器Repeater
    • 工作在OSI模型的第一层——物理层
    • 对减弱的信号进行放大和发送
    • 无法改变传输速度,不能在传输速度不同的媒介之间转发
    • 即使在数据链路层中出现错误,中断器仍然转发数据
    • 拥有多端口的中断器,称为中继集线器或集线器Hub
  4. 网桥
    • 工作在OSI模型的第二层——数据链路层,所以称为2层交换机
    • 网桥根据数据帧的内容转发数据给相邻的网络。(有选择判断的功能)
    • 拥有多端口的网桥,称为交换集线器Hub(大多情况Hub都指这个)
  5. 路由器
    • 工作在OSI模型的第三层——网络层,所以称为3层交换机
    • 3层交换机根据IP地址进行处理
  6. 4~7层交换机
    • 负责处理OSI模型中从 传输层 到 应用层 的数据
    • 如负载均衡器
  7. 网关
    • 网关负责从 传输层 到应用层 的数据进行转换和转发的设备
    • 负责协议的转换与数据的转发
    • 在同一种类型的协议之间转发数据叫做应用网关
1.10现代网络初态
  1. 骨干或核心 :是计算机网络的中心,通常会选用调整路由器相互连接使之快速传输大量数据
  2. 边缘网络:网络中相应于高速公路出入口的部分被称作“边缘网络”
  3. 接入层/汇聚层:网络中连接“边缘网络“的部分

二、TCP/IP基础知识

1TCP/IP出现的背景及其历史
  1. ISP: Internet Service Provider , 专门提供互联网接入服务的提供商(公司)
2TCP/IP的标准化
  1. RCF:需要标准化的协议,被人们列入RFC(Request For Comment)。(征求意见表,属于一种征求协议相关意见的文档)
  2. RCF的内容不能被修改,只能被替换
  3. 标准化流程:互联网草案(提议标准) --> 草案标准 --> 标准
3互联网基础知识
4TCP/IP协议分层模型
  • OSI参考模型注重 ”通信协议必要的功能是什么“
  • TCP/IP则强调 ”在计算机上实现协议应该开发哪种程序“

TCP/IP |网络基础知识(OSI模型等)|TCP/IP基础知识|数据链路|IP协议|IP协议相关技术|TCP与UDP|路由协议|应用协议|网络安全_第1张图片

5TCP/IP分层模型与通信示例

分层传送

  • 每个分层中,都会对所发送的数据附加一个首部,在这个首部中包含了该层必要的信息
  • 在下一层的角度看,从上一分层收到的包全部都被认为是本层的数据

数据单位术语

  1. 包:表述数据的单位,可以说是全能性术语
  2. 帧:用于表示数据链路层中包的单位
  3. 数据报:IP和UDP等网络层以上的分层中包的单位
  4. 段:TCP数据流中的信息
  5. 消息: 应用协议中数据的单位

头部信息

每个包首部中至少都包含两个信息:

  • 一个是发送端和接收端地址
  • 另一个是上一层的协议类型

(发送端和接收端地址每层都有:以太网(数据链路层)是MAC,IP用IP地址,TCP/UDP用端口号,应用程序中,像邮件地址也是一种地址标识)

三、数据链路

四、IP协议

1IP即网际协议
  1. TCP/IP的心脏是互联网层。这一层主要由IP 和 ICMP 两个协议组成
  2. 主机的定义:配置有IP地址,但是不进行路由控制的设备
  3. 路由器的定义:既配有IP地址又具有路由控制能力的设备叫做“路由器”
  4. 节点:主机和路由器的统称
  5. 在IPv4标准中,将具有路由控制功能的设备叫做“网关”(现在都称为路由器)
  6. 网络层可以跨越不同的数据链路,实现两端节点之间的数据包传输。
2IP基础知识
  1. 路由控制(Rounting)是指将分组数据发送到最终目标地址的功能

  2. Hop:跳。一跳是指利用数据链路层以下分层的功能传输数据帧的一个区间。如以太网等数据链路中使用MAC地址传输数据帧,此时的一跳是指从源MAC地址到目标MAC地址之间传输帧的区间

  3. 路由控制表(Rounting Table):记录IP数据在下一步该发给哪个路由器。利用IP地址的网络号进行路由。

TCP/IP |网络基础知识(OSI模型等)|TCP/IP基础知识|数据链路|IP协议|IP协议相关技术|TCP与UDP|路由协议|应用协议|网络安全_第2张图片

  1. 数据链路的抽象化

    • 在IP包传输的过程中,可以把各个数据链路抽象出来,不用管具体细节,只管IP的端对端的传输结果
    • 如果不抽象化来看,则每个数据链路都有自己的细则,如一次能传输包的数据大小不一样
  2. IP属于面向无连接型

    • 两点原因:简化 + 提速
    • IP不可靠,所以可靠性由上一层的TCP的实现。
    • 思考:为什么不把可靠性和IP结合在一起?
      • 分层,细化责任
      • 如果结合,编程和设计就会加大难度
3IP地址的基础知识
  1. IP(v4)地址用32位表示。一般用进制点符号来表示。
  2. 最多允许43亿(2^32)计算机连接到网络
  3. 192.168.128.10/24 , 表示从第1位到第24位都是表示网络号
  4. IP地址的分类
    • A类:0开头,8位网络号
    • B类:10开头,16位网络号
    • C类:110开头,24位网络号
    • D类:1110开头,32位网络号
    • 注意:网络号全1/0 和 主机号全1/0 不用,总共:2 * 主机数 + 网格数 * 2 个地址是不用保留的
  5. 广播地址:将IP地址中的主机地址全部设置为 1(xxxxxx.255) ,就成为了广播地址
    • 本地广播:只在本网络内广播,到了边缘路由器,xxxxxx.255的IP包会被屏蔽,不会被转发到其他网络
    • 直接广播:一个网络内的主机向另一个网络的xxxxxx.255广播主机发送IP包,那么另一个网络的广播主机就会“帮忙”广播
  6. 子网掩码:
    • 可以将原来A、B、C类等分类中的主机地址部分用作子网地址,可以将原网络分为多个物理网络的一种机制
    • 用32位二进制表示,对应IP地址的网络标识部分全部为“1”,主机为“0”
    • 全局IP:在整个互联网范围内保持唯一
    • 私有IP:在同一个域内保证唯一:只能在域内通信
    • NAT技术可以互换私有IP与全局IP,让配有私有地址的主机与配有全局地址的互联网主机实现了通信
4路由控制
  1. 路由控制表的形成方式
    • 管事员手动设置:静态路由控制
    • 路由器与其他路由器相互交换信息时自动刷新:动态路由控制
  2. 路由控制表中记录着网络地址与下一步应该发送至路由器地址
  3. 默认路由:
    • 默认路由是指路由表中任何一个地址才能与之匹配的记录
    • 标记为 0.0.0.0 / 0 , 或 default , 。
  4. 主机路由 : x.x.x.x / 32 , 表示整个IP地址所有位都将参与路由。多用于不希望通过网络地址路由的情况
  5. 环回路由
    • 是在同一台计算机上的程序之间进行网络通信时所使用的一个默认地址
    • 使用一个特殊的IP地址127.0.0.1 作为环回地址。localhost 主机名与该地址具有相同意义
    • 使用这个IP 或主机名时,数据包不会流向网络
  6. 路由控制表的聚合
    • 减少内存,减少查找时间
5IP分割处理与再构成处理
  1. 数据链路不同,MTU则相异。(max transfer unit 最大传输单元)
  2. 经过分片之后的IP数据报在被重组的时候,只能由目标主机进行,路由器虽然做分片,但不会重组
    • 原因:如无法保证IP分片是否经过同一个路径传送
    • 拆分之后的数据包可以有些中途会丢失
  3. 路径MTU发现
    • 尝试发送IP,如果太大就被打回
    • 直接找到从发送端主机到接收端主机之间不需要分片时最大MTU的大小。即路径中存在的所有数据链路中最小的MTU
6IPv6
  1. 出现的原因:解决IPv4地址不够用的问题。地址空间是version 4 的 7.9 * 10 ^23 倍
  2. 长度是IPv4的4倍,即128bit
  3. 表示法:16比特为一个单位。当出现连续0时,可省略。最多出现一次 “ :: ”
    • 如 EFDC : 8738 : ABDC : 8763 : 8934 : ABED : FFCD : DEDS
    • 如 EFDC : : 8934 : ABED : 0: DEDS
  4. 结构:前64比特为网络号,后64比特为主机号
7IPv4首部

TCP/IP |网络基础知识(OSI模型等)|TCP/IP基础知识|数据链路|IP协议|IP协议相关技术|TCP与UDP|路由协议|应用协议|网络安全_第3张图片

  1. 版本:如IPv4, 该字段则为4
  2. 首部长度:表明IP首部的大小。没有可选项则固定为20字节
  3. 区分服务:表明服务的质量。如最低延迟优先,最小代价优先等等
  4. 总长度:IP首部 + 数据 总字节数。
  5. 标识:用于分片重组,即同一IP包中的片内id标识。
  6. 标志:对IP包进行一些说明。如是否进行分片,是否为最后一个包。
  7. 片偏移:标识分片的每一个分段相对于原始数据的位置。
  8. 生存时间:当前包在网络上应该生存的秒数(最初意思)。实际意思是可以跳转多少个路由器。
  9. 协议:表示IP包传输层的上层协议编号
  10. 首部检验和:只检验IP首部。
  11. 源地址:发送端的IP地址
  12. 目标地址:接收端的IP地址
  13. 可选项:长度可变,只在进行实验或诊断时进行使用
  14. 填充:把首部长度通过填充0,填充到32的整数倍
  15. 数据:上一层的包。
8IPv6首部格式

TCP/IP |网络基础知识(OSI模型等)|TCP/IP基础知识|数据链路|IP协议|IP协议相关技术|TCP与UDP|路由协议|应用协议|网络安全_第4张图片

  1. 版本:如IPv6 版本为6
  2. 通信量类:类似于IPv4 的 <区分服务:表明服务的质量。如最低延迟优先,最小代价优先等等>
  3. 流标号:用于服务质量的控制
  4. 有效载荷长度:只表示数据部分的长度。有可先项则包含可选项数据长度
  5. 下一个首部:表示IP的上一层协议如TCP。有扩展时则表示第一个扩展首部的协议类型
  6. 跳数限制:与IPv4的TTL相同
  7. 源地址:不解释
  8. 目标地址:不解释
  9. 扩展首部:
    • 用下一个首部确定扩展首部类型
    • 可以无限自由扩展

五、IP协议相关技术

1仅凭IP无法完成通信
2DNS
  1. 早期管理IP与主机名的映射是通过 集中管理主机名 的方式进行的
  2. DNS:维护一个用来表示组织内部主机名与IP地址之间对应关系的系统
  3. 域名:是指为了识别主机名称和组织机构名称的一种具有分层的名称
  4. 域名服务器:是指管理域名的主机和相应的软件。域名每一层都设有一个域名服务器。
  5. 解析器:进行DNS查询的主机和软件叫做DNS解析器
  6. DNS查询:层层向上找域名服务器,直到找到
  7. DNS其它职责:
    • 管理主机与IP的映射,叫做A记录
    • 从IP检索主机名称,叫做PTR
    • 上层或下层域名服务器IP地址的映射叫做NS记录
3ARP
  1. ARP:address resolution prococol 是一种解决地址问题的协议。以目标IP地址为线索,用来定位下一个应该接收数据分包的网络设备对应的MAC地址
  2. 简略过程:从一个IP地址发送ARP请求包以了解其MAC地址,目标地址将自己的MAC地址填入其中的ARP响应包返回到IP地址
  3. RARP:将ARP反过来,从MAC地址定准位IP地址的一种协议
4ICMP

CMP(Internet Control Message Protocol)Internet控制报文协议。(与IP地址工作的层数一样,网络层)

  1. ICMP:负责与IP相关的设置。作为IPv4的一个辅助
    • 用于通知出错原因的错误消息
    • 用于诊断的查询信息
  2. 在IPv6中,ICMP是必要的,最重要的是ARP的功能–邻居探索被结合到ICMP中去了
5DHCP

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)

  1. 实现了自动设置IP地址、统一管理IP地址的分配
  2. 基本工作原理:
    1. DHCP客户端发送广播请求
    2. DHCP服务端返回响应,并在响应中包含可设置的IP信息
    3. DHCP客户端再次发送广播请求,包含可设置的信息。然后相关主机自己配置
    4. DHCP服务端通知允许这样做
6NAT

NAT(Network Address Translation,网络地址转换)

  1. NAT是用于在本地网络中使用私有地址,在连接互联网时转而使用全局IP地址的技术
  2. 目的:为了应对IPv4地址数量的枯竭
  3. NAT-PT:将IPv6首部转换为IPv4首部的协议
  4. NAPT:连同端口一起转换
7IP隧道
  1. 在网络层的首部后面继续追加网络层首部的通信方法就叫做IP隧道

TCP/IP |网络基础知识(OSI模型等)|TCP/IP基础知识|数据链路|IP协议|IP协议相关技术|TCP与UDP|路由协议|应用协议|网络安全_第5张图片

8其他IP相关技术

六、TCP与UDP

传输控制协议(TCP,Transmission Control Protocol)

用户数据报协议(UDP,User Datagram Protocol)

1传输层的作用
  1. 传输层:管理两个终端之间的数据传输,保证数据可靠传输(当然也有不可靠的UDP)
  2. 套接字Socket
    • 上联应用进程,下联网络协议栈
    • 应用程序利用套接字,可以设置对端的IP地址,端口号,并实现数据的发送与接收
2端口号
  1. 端口号Port:用来识别同一台计算机中进行通信的不同应用程序。也被称为程序地址

  2. 在TCP/IP 或 UDP/IP 通信中,有5个信息来识别不同的通信:

    1. 源IP地址
    2. 目标IP地址
    3. 协议号 (如是TCP还是UDP)
    4. 源端口号
    5. 目标端口号
  3. 端口号的确定方式

    • 标准既定的端口号。事先确定的,广泛应用的,知名的。
    • 时序分配法。客户端不需要管理端口号的分配,全权交给OS来分配管理端口号
  4. 那些知名的既定的端口号 与 传输层协议并无关系,只要端口号一致都将分配同一种程序进行处理

  5. TCP中常见的端口号:

    端口号 服务名 内容
    21 ftp File Transfer Protocol
    22 ssh SSH Remote Login Protocol
    53 domain Domain Name Server
    80 http World Wide Web HTTP
    443 https http protocol over TLS/SSL
3UDP
  1. UDP不提供复杂的控制机制,利用IP提供面向 无连接 的通信服务
  2. 将应用程序发来的数据在收到的那一刻,立即按照原样发送到网络上的一种机制
    • “U”本意用户,但不单单指普通的互联网用户,也指程序员。
    • UDP是按照程序员的编程思路在传送数据报。因为它将部分控制转移给应用程序去处理
    • 相比之下,TCP拥有各种各样的控制机制,所以程序员的编程思路不一定自由。
  3. UDP主要用于那些对调整传输和实时性有较高要求的通信或广播通信。
    • 最常见的就是 视频、音频 、电话 等多媒体通信(即时通信)
    • 广播通信
4TCP
  1. TCP

    • 面向连接
    • 只有在确认通信对端存在时都会发送数据
    • 每次通信接收端都会返回ACK应答
  2. 通过序列号与确认应答提高可靠性。应答超时时,会重发

  3. 连接管理:一个连接的建立与断开至少需要来回发送7个包

TCP/IP |网络基础知识(OSI模型等)|TCP/IP基础知识|数据链路|IP协议|IP协议相关技术|TCP与UDP|路由协议|应用协议|网络安全_第6张图片

  1. TCP以段为单位发送数据,称为最大消息长度:MSS(Maximum Segment Size)

    • 是在第三次握手的时候被计算出来的
    • 大小取决于两个主机接口中能接收的最大数据大小的最小值
  2. 窗口控制技术:利用并行发送,提高效率。不用一次数据通信一次应答

  3. 流控制:让发送端根据接收端的实际接收能力控制发送的数据量。发送端主机会时不时发送一个叫做窗口探测的数据段,以获取最新的窗口大小信息

  4. 拥塞控制:利用慢启动,即滑动窗口大小慢慢增大。这样应付给人一种TCP的吞吐量在逐步占领网络带宽

  5. 提高网络利用率

    • Nagle算法:发送端即使还有应该发送的数据,但如果这数据很少的话,则进行延迟发送的一种处理机制。满足 收到确认应答 或 可以发送最大段长度MSS数据时 可以发送,否则延迟
    • 延迟确认应答:收到数据后不立即返回确认应答,而延迟一段时间。可能因为刚开始接收完数据,缓冲区已满,等一会儿后接收端处理后,释放缓冲区。
    • 捎带应答:TCP的确认应答和回执数据通过一个包发送。
5其他传输层协议
6UDP首部的格式
7TCP首部格式

七、路由协议

1路由控制的定义
  1. 路由器根据路由控制表来转发数据包
  2. 静态路由:事先设置好路由器和主机中并将路由信息固定的一种方法
  3. 动态路由:让路由协议在运行过程中自动地设置路由控制信息的一种方法
  4. 动态路由的基础:动态路由会给相信路由器发送自己已知的网络信息,然后这些信息又拉力传递给其他路由器,直到整个网络了解完成,路由控制表也制作完成了
2路由控制范围
  1. 在互联网中,接入互联网的各种组织,没有管理者,也没有被管理者,每个组织之间保持着平等的关系
  2. 路由协议被分为EGP(外)和IGP(内)两个层次
  3. 自治系统:在一定范围内圈
    • 内部路由协议为IGP(Interior Gateway Protocol)
    • 自治系统之间用的是EGP(Exterior Gateway Protocol)
3路由算法

路由控制有很多算法,有代表性的有两个。

  1. 距离向量算法
    • 指根据距离(代价)和方向决定目标网络或目标主机位置的一种方法
    • 每个路由器中掌握的信息不同
  2. 链路状态算法
    • 路由器在了解网络整体连接状态(拓扑)的基础上生成路由控制表的一种方法
    • 所有路由器中持有的信息相同

拓扑:网络设备之间的抽象连接方式。

4RIP

Routing Information Protocol

  1. RIP基于距离向量算法决定路径
  2. 距离(Metrics)的单位为“跳数”,跳数是指所经过的路由器的个数
  3. RIP将路由控制信息定期(30s一次)向全网广播。如果没有收到路由控制信息,连接会被断开。(实际上会等6次才会真正断开)
5OSPF

Open Shortest Path Fisrt

  1. 链路状态型路由器
  2. 路由器之间交换链路状态生成网络拓扑信息,然后再根据这个拓扑信息生成路由控制表
  3. OSPF可以给每条链路赋予一个权重(代价,如带宽较小路由器之间代价高),然后选择代价最小的一条路径。RIP则是选择路由器个数最少的路径
  4. OSPF有五种类型的状态包,相比于RIP整包发送,可减少流量
  5. OSPF可将区域分层化进行细分管理
    • 每个区域内的路由器都持有本区域网络拓扑的数据库
    • 关于区域之外的路径信息,只能从区域边界路由器那里获它们的距离
6BGP

Border Gateway Protocol 边界网关协议

  1. 属于外部网关协议(EGP)
  2. 主要用于ISP之间相连接的部分。只有BGP,RIP和OSPF共同进行路由控制,才能够进行整个互联网的路由控制
  3. BGP属于路径向量型协议
    • 根据所要经过的路径信息访问列表进行路由控制
    • 在AS(自治系统)路径信息访问列表中,不仅包含转发方向和距离,还涵盖了算什么所有AS的编号。因此不是一个距离向量型协议
    • 对网络构造仅用一元化表示。因此也不属于链路状态型协议
7MPLS

Multi Protocol Label Switching 多协议标记交换技术

  1. 对每个IP包都设置一个标记,进行轻量控制

八、应用协议

1应用层协议概要
  1. 应用协议:让应用进行特定通信处理
  2. TCP和IP等下层协议是不依赖于上层应用类型,适用性非常广。而应用协议是特定应用的特定通信
2远程登录
  1. 实现从自己的本地计算机登录到网络另一端计算功能的应用叫做远程登录

  2. TELNET:提供仿真终端和协商选项机制(非加密)
    TCP/IP |网络基础知识(OSI模型等)|TCP/IP基础知识|数据链路|IP协议|IP协议相关技术|TCP与UDP|路由协议|应用协议|网络安全_第7张图片

  3. SSH:加密的远程登录协议

TCP/IP |网络基础知识(OSI模型等)|TCP/IP基础知识|数据链路|IP协议|IP协议相关技术|TCP与UDP|路由协议|应用协议|网络安全_第8张图片

  1. Shell:是操作系统提供给用户的、便于使用该系统中各种功能的一种用户接口

  2. 端口转发:是指将特定端口号收到的消息转发到特定的IP地址和端口号码的一种机制

3文件传输
  1. FTP工作机制
    • 使用两条TCP连接:一条用于控制,一条用于数据传输
    • 控制连接,在用户要求断开 或者 长时间没使用 会断开
    • 数据传送一次,就断开一次
4电子邮件

SMTP:Simple Mail Transfer Protocol

  1. 实现高效发送邮件内容
  2. 早期电子邮件,使用简单TCP,则要求两端主机都要通电
  3. 中间邮件服务器:POP3协议支持
5WWW
  1. 万维网(Wrold Wide Web)是将互联网中的信息以超文本形式展现的系统
6网络管理
  1. SNMP:应用在TCP/IP的网络管理的协议,收集必要的信息。基于UDP/IP协议
7其他应用层协议

九、网络安全

防火墙:设计思路为“暴露给危险的主机和路由器的个数要有限”。不暴露的,其发送过来的包直接丢弃。

根据IP如何找到路由器(MAC,然后呢)

你可能感兴趣的:(通用笔记)