0%

TCP/IP协议详解

电子科技大学-网络教育课程-杨宁老师的《TCP/IP详解》听课笔记


1~3

引言、OSI模型与TCP/IP、底层网络技术

协议和标准

  • What is 协议
    • 一组控制数据通信的规则
    • 三要素:语法,语义,时序(控制何时通信)
  • What is 标准
    • 一致同意的规则
    • 种类:1. 事实上的标准——实际或习惯 2. 合法标准——组织制定的法律或规章
  • 标准化组织有哪些
    • ISO(国际标准化组织)
    • ITU-T
    • ANSI(美国国家标准化局)
    • IEEE(电气电子工程师学会)
    • EIA
  • Internet标准:RFC

OSI模型和TCP/IP协议族

  • 什么是OSI参考模型
    • ISO组织制定的参考模型,Open System Interconnection
    • 使两个不同的系统能够通信的一套参考标准
  • OSI模型的层次功能
    • 七层及其功能
      • 应用层:为用户提供网络处理的应用
      • 表示层:数据编码、转换
      • 会话层:管理会话的过程
      • 传输层:端到端的数据传输
      • 网络层:编址、寻址
      • 数据链路层:送交给网络介质
      • 物理层:二进制信号的物理传输
    • 服务:下层为上一层提供服务
    • 接口:不同层之间,服务的使用和提供
    • 对等实体:存在通信关系的对等层实体才是对等实体
    • 对等层通信:只有对等实体之间才能通过对等层协议进行通信
    • PDU:Protocol Data Unit. 协议数据单元,对等层之间传输的数据
    • 帧、分组、数据段、数据分别表示的是第2、3、4、(5 & 6 & 7)层的PDU
  • TCP/IP协议族
    • 层次功能
      • 应用层
      • 传输层
      • 网际(Internet)层
      • 网络接入层

编址

Internet 网常用的三个地址概念

  • 物理地址
    • 标识通信节点
    • 由所属LAN或WAN指定
    • LAN/WAN内唯一
    • 链路地址/硬件地址
    • 数据链路层上的,不是物理层
    • 例子:0x0005.5D06.1418(MAC地址)
  • IP地址
    • 网络层上的地址
    • 标识通信节点的网络连接(物理地址是在物理网内部之间,而IP地址是在不同的物理网之间标识通信节点)
    • Internet内唯一
    • 是互联网上的地址
  • 端口地址
    • 标识通信进程
    • 操作系统指定
    • 一台计算机内唯一
    • 例如:21(FTP)、22(SSH)、23(Telnet)、25(SMTP)、80(HTTP)
    • 传输层

目的地址的分类

  • 单播
    • 一个接收者
    • 除了下面两个之外的地址都可以作为单播地址
  • 多播
    • 一组接收者
    • 物理地址:前面24bit必须是0x0100.5Exx.xxxx;IP地址中:224.0.0.0~239.255.255.255都是多播地址的可用范围
    • IGMP(Internet Group Management Protocol)协议
  • 广播
    • 网络中的所有系统
    • 广播地址:物理地址全1:(0xFFFF.FFFF.FFFF);IP地址全1(255.255.255.255)

TCP/IP的版本

主要是IP协议的改动,IP协议是TCP/IP协议的核心

  • Version 4
    • 地址空间不足和低效率:32位的地址(后来是IPv6)
    • 对服务质量和安全方面支持较弱(音视频传输等,后来出现了UDP)
  • Version 5
    • 基于OSI模型
    • 层次改变大,代价高,没有实际使用
  • Version 6
    • 仅改动了网络层协议:IPv6、ICMPv6
    • 扩大了地址空间:128位的地址
    • 改进了版本4的弱点

小结

  • 对分层网络协议体系的理解

    • 不同节点:层次组成不同,作用不同
    • 横向理解:虚通信、对等实体、协议、PDU
    • 纵向理解:封装与解封、服务、接口
  • TCP/IP

    • 层次:掌握与OSI模型的对应关系
    • 协议:掌握主要协议及其所在层次
  • 地址

    • 掌握物理、IP、端口地址:作用、所在层次
    • 掌握单播、多播、广播地址:作用

底层网络技术

传输介质

不同的传输介质在物理层上(比特流)有不同的实现(电流高低、光的强弱)

  • 有线介质——导线管(导向媒体)
    • 双绞线
    • 同轴电缆(金属铜导线,电流)
    • 光纤(玻璃或塑料、光)
  • 无线介质——电磁波(非导向媒体、无方向的)
    • 8个频段(无线电、红外)

局域网(LAN)

概念

允许一些独立设备在受限地理范围内彼此都能直接通信(有些过时)

共享介质型——广播式的通信特征

技术

  • Ethernet(以太网)
    • 接入方法:CSMA/CD(载波监听多路访问方式),监听信道是否空闲。检查是否会发生冲突,一旦发生冲突,放弃发送数据,物理网段上的数据都不再有效
    • 地址:6位
    • 在局域网中又将数据链路层分为了两层:逻辑链路控制子层(靠近网络层),介质访问控制子层(靠近物理层,只有局域网中才有MAC地址的概念,广域网等叫物理地址)
    • 帧(数据链路层中包的单位):数据帧
      • 根据RFC标准制定的不同,帧格式也有所不同,例:RFC 984 和RFC 1042
      • RFC894 : Preamble|SFD|Des. Addr|Source Addr|Type|Data|FCS
      • 这些帧是对网络层数据(Data)的封装。在IEEE802.2/802.3封装的帧格式中,Data中有3个字节的LLC数据,因为局域网中分了LLC子层和MAC子层,数据帧的封装是靠近物理层的MAC子层,3个字节的LLC是提供给LLC子层使用,用于CSMA/CD等。
      • 根据Source Addr. 后的字节来判断(可能用到2个,也可能4个。目前在用的以太网帧格式就几种)
      • 对于物理层来说,这些都是bit流,帧格式是没有意义的。但帧格式的前导符以及帧定位符来告诉物理层应该从哪里开始构成一个帧。最后送交给数据链路层。
    • 除视频课之外我详细了解了下以太网在不同工作模式下的区别:以太网发展初期,共享式以太网下的工作模式是半双工,到了后来出现的是交换式以太网,采用的是全双工的工作模式。全双工模式下,网卡可以同时发送和接受数据包,并且交换机与PC机直连,通信介质是使用双绞线,所以不存在什么信道冲突。也就无需采用CSMA/CD机制。
  • Token Ring & FDDI (了解即可,是一种无冲突的共享介质型网络)
    • 令牌传递

交换

交换系统:有多个输入和输出的“黑盒子”

交换技术

  • 电路交换(电话系统)

    • 建立连接
    • 数据传输:每个主机都有自己独立的信道,通信的两个节点之间独占介质,其他站点无法与这两个节点通信。如果有公共介质,可能采用了时分复用技术或者频分复用技术。
    • 拆除连接
  • 分组交换

    1. 数据报方式:数据发送之前不需要建立连接。将数据分组,每个组独立的发送。数据可能丢失,到达先后次序也不一致。

    2. 虚电路方式:需要建立连接,沿着一条路发送。

      • 电路交换数据传输是以流的单位,虚电路是以分组的单位
      • 电路是物理上的连接,虚电路是逻辑上的一条连接
  • 报文交换:和分组交换中数据报方式差不多,分组交换中将数据报分为多个组,而报文交换是以数据报为单位。

广域网(WAN)

概念

  • 很大的地理范围,长距离传输。
  • 交换网络——点到点式

技术

很多,没详细讲。

局域网和广域网的比较:知识点都讲过。

连接设备

  • 转发器/集线器:仅在物理层,再生放大网络信号。
  • 网桥/交换机:
    • 网桥可以用软件来实现,交换机是从硬件来实现。不限制连接网段的个数。
    • 网桥根据数据帧的内容转发数据给相邻的其他网络
    • 网桥可以连接传输速率不同的网络
    • 网桥将数据存储于内存,再重新生成信号作为一个全新的帧去转发。
    • 具备地址(MAC、物理、硬件、适配器)自学机制和过滤功能控制网络流量
    • 还可以检查数据帧中FCS的值,校验数据。
  • 路由器:
    • 跟据IP地址进行转发,连接不同的数据链路
  • 网关/4~7层交换机:
    • 负载均衡器
    • 数据转换
    • 特殊应用访问加速,带宽控制
    • 防火墙

4~5(IP编址技术)

IP编址、构成子网和超网

第四章

IP地址:唯一标识互联网上的主机和路由器

路由器需要连接不同的网络、每个接口都要分配一个IP地址

主机标识符

  • Name:字符串,可读性强(DNS)
  • Addr :二进制,软件效率高(IP地址)
  • Route:怎样到达(路由协议)

IP地址结构

  • 32Bit二进制地址

  • 模拟物理网的编址机制

  • 层次编址,而物理地址是平面编址

  • Network id + Host id:一个用来标识网络,一个标识主机。网络标识区分数据链路层的不同段。

  • 点分十进制。实际上使用是不分的。

IP地址分类

A类地址

  • 标识位:前一位,值为0
  • Netid:7位
  • Hostid:24位
  • 范围:0.0.0.0 ~ 127.255.255.255

B类

  • 标识位:前两位,值为 10
  • Netid:14
  • Hostid:16
  • 范围:128.0.0.0 ~ 191.255.255.255

C类

  • 标识位:前三位,值为110
  • Netid:21
  • Hostid:8
  • 范围:192.0.0.0 ~ 223.255.255.255

D类

  • 标识位:前四位,值为1110
  • 标识多播应用
  • 无网络和主机标识
  • 范围:224.0.0.0 ~ 239.255.255.255

E类

  • 标识位:前四位,值为1111
  • 无网络和主机标识
  • 范围:240.0.0.0 ~ 255.255.255.255
  • 用于研究

多接口设备

  • 多接口计算机:可以连接到多个网络
  • 路由器:必须连接到多个网络、每个网络连接分配一个IP地址,可属于不同的类

特殊地址

  • 网络地址:标识整个网络。既不能作为源,也不能作为目的地址。Netid特定,Hostid全0
  • 直接广播地址:标识特定网络的广播。不能作为源,可以作为目的地址。存在安全问题,路由器上设置为不转发。Netid特定,Hostid全1
  • 受限广播地址:标识本地网络的广播。该源所在的网络内广播。Netid和Hostid全1
  • 本网络上的本主机:不知道自身ip地址时,发送请求分组使用。0.0.0.0
  • 本网络的特定主机:标识某网络的主机,实际不使用。Netid全0,Hostid不为0
  • 环回地址:网络层发现IP地址是环回地址时,直接回传给传输层,不经过物理层。Netid全1,Hostid特定 例:127.0.0.1

互联网实例

  • 一个物理接口可以有多个逻辑连接,但是多个物理连接不能共用一个逻辑连接。

单播、多播和广播地址

  • 多播:一对多。使用D类地址。应用:电话会议

申请IP地址

知识点偏课本的性质,不记录了。

第五章·11

Classful IP 编址的缺陷:

  • C类:少于255台(255-2)主机的网络
  • B类:介于255~65535台主机的网络
  • A类:超过65535台

网络标识相同的计算机必须同属于同一个链路,会造成地址浪费过大的情况

解决方案:子网划分、超网划分。

构成子网

子网划分是将主机地址(HostID)的部分用作子网地址

例如B类网:142.14.0.0 划分为 142.14.2.0 、142.14.7.0等子网

  • 不能用首字节判定网络大小
  • 字节边界没有意义

因此引入了掩码

  • 表示网络或子网的大小
  • 32bit二进制数
    • 网络或子网(Netid+Subnetid)部分为1
    • 主机部分为0

例如:C类网络IP地址:202.115.12.0、掩码(Mask):255.255.255.192 可以得出子网大小 64 - 2 = 62

术语

  • 网络地址
    • 特定Net id
    • 全0 Subnet id + 全0 Host id
    • 例如:172.16.0.0 / 172.16.0.255 ->广播地址
  • 子网地址
    • 特定Net id + 特定 Subnet id
    • 全0 Host id
    • 例如:172.16.16.0
  • 主机地址
    • 全是特定
    • 例如:172.16.16.201

掩码

掩码表示

  • 点分十进制表示:255.255.255.192
  • 位数表示: /26

掩码运算

&(与)运算

  • Net address = IP & Mask
  • Host address = IP & Mask的反码

子网构成举例

6~8(网络层协议)

9~10(传输层协议)

11(客户服务器模型)

12~14(应用层协议)