学习笔记:《TCP/IP详解 卷1》概述

概述

1.1 体系结构列表

Internet体系结构

1.1.1 分组、连接和数据报
  • 分组交换思想
  • (多路)复用
  • 统计复用
  • 时分复用(TDM)和静态复用
  • 面向连接的网络
  • 数据报:一个特定类型的分组,有关来源和最终目的地的所有识别信息都位于分组中(不在分组交换机中),可用于建立一个无连接的网络,并且没有必要使用复杂的信令协议。
  • 消息边界或记录标记
1.1.2 端到端论点和命运共享
  • 端到端论点:倾向于支持一种使用“哑”网络和连接到网络的“智能”系统的设计方案。这是我们在TCP/IP设计中所看到的,很多功能在端主机的应用程序中的实现。
  • 命运共享:一种通过“虚拟连接”维持活动的设计理念,也支持一种“带智能终端主机的哑网络”模型。建议将所有必要的状态放在通信端点,这些状态用于维护一个活动的通信关联(例如虚拟连接)。
1.1.3 差错控制和流量控制
  • 差错控制:对在网络中由于硬件问题、数据传输中被修改、在无线网络中超出范围以及其他因素产生的存在数据损坏或丢失的问题的处理
  • 尽力而为的交付:网络不会花费很大努力来确保数据在没有差错或缺陷的情况下交付。
  • 流量控制:如果尽力而为的交付成功,发送方能以超过接收方处理的速度生成信息。在尽力而为的IP网络中,降低发送方的发送速度可通过流量控制实现,它在网络外部或通信系统高层中运行。

1.2 设计和实现

1.2.1 分层

通过分层,每层只负责通信的一个方面。

开放系统互连标准(OSI)模型

每层都有不同的任务。
这里写图片描述

1.2.2 分层中实现的复用、分解和封装
复用、分解和封装
  • 协议复用:允许多种协议共存于同意基础设施中。它也允许相同协议对象(例如连接)的多个实例同时存在,并且不会被混淆。
    复用可以发生在不同层,并在每层都有不同类型的标识符,用于确定信息属于哪个协议或信息流。
  • 封装:当某层的一个称为协议数据单元(PDU)的对象(分组、消息等)被低层携带时,这个过程称为在相邻低层的封装(作为不透明数据)
    这里写图片描述
    封装的本质:每层都将来自上层的数据看作不透明、无需解释的信息。
  • 分解:若某层在在获得PDU前面增加自己的头部头部用于在发送时复用数据,接收方基于一个分解(拆分)标识符执行分解
理想化的小型互联网络

有些理想化的小型互联网络包括两种端系统,即交换机路由器
在图中,每个设备实现协议栈的一个子集。
左侧的主机对应的物理层实现了3种链路层协议(D、E和F),以及运行在同一网络层协议上的3种传输层协议(A、B和C)。
端主机实现了所有层,交换机实现到第2层,路由器实现到第3层。
由于路由器具有互联不同类型的链路层网络的能力,因此它必须为互联的每种网络实现链路层协议。
这里写图片描述
上图中,可以区分为端系统(两边的两台主机)和中间系统(中间的路由器)。网络层之上的各层使用端到端协议。在我们的描述中,只有端系统需要这些层次。
但是网络层提供了一种逐跳协议,它用于两个端系统和每个中间系统

  • 交换机:通常不认为交换机或桥接是一个中间系统,这是由于它们没有使用互联网络协议的地址格式来编址,并在很大程度上以透明于网络层协议的方法运行。从路由器和端系统的角度来看,交换机和网桥实际上是不可见的。

  • 路由器:有两个或更多的网络接口——多宿主(有多个接口的系统)。一台主机也可以是多宿主的,但除非它专门将分组从一个接口转发到另一个接口,否则不能称为路由器。

互联网络的目标之一是对应用隐藏所有关于物理布局(拓扑)和底层协议的异构性的细节。
1.3 TCP/IP协议族结构和协议
1.3.1 ARPANET参考模型

这里写图片描述
上图描述了源于ARPANET参考模型的分层,它最终被TCP/IP协议族采纳。它的结构比OSI模型更简单,但在实现中包括一些特定次恶意,并且不适合常规层次的简化。

常见的IP协议
  • Internet控制消息协议(ICMP)是IP的一个辅助协议,IP层使用它于其他主机或路由器的IP层之间交换差错消息和其他重要消息。(IPv6和IPv4)
  • Internet组管理协议(IGMP)是IPv4的另一个辅助协议,采用组播寻址和交付来管理组播组成员的主机。
常见的两种Internet传输协议
  • 传输控制协议(TCP)会处理数据包丢失、重复和重新排序等IP层不处理的问题。它采用面向连接(VC)的方式,并且不保留消息边界。【可靠】
  • 用户数据报协议(UDP)仅提供比IP协议稍多的功能。UDP允许应用发送数据报并保留消息边界,但不强制实现速率控制或差错控制。【简单】
  • 其他:数据报拥塞控制协议(DCCP)(介于TCP和UDP之间,面向连接、不可靠的数据报交换,但具有拥塞控制功能)、流控制传输协议(SCTP)(类似于TCP的可靠交付,但不要求严格保持数据的顺序)
1.3.2 TCP/IP中的复用、分解和封装

协议的复用、分解和封装的具体形式,具体协议的理解。

1.3.3 端口号

端口号是16位的非负整数(0~65535)【抽象、无物理意义】,每个IP地址有65536个可用的端口号,每个传输协议可使用这些端口号,它们被用于确定正确的接受数据的服务。

特定端口号(Internet号码分配机构IANA分配)
  • 熟知端口号(0~1023):安全外壳协议(SSH,22)、FTP(20和21)、电子邮件/简单邮件传输协议(SMTP,25)、域名系统(DNS,53)、超文本传输协议或web(HTTP和HTTPS,80和443)、简单网络管理协议(SNMP,161和162)……
  • 注册端口号(1024~49151)
  • 动态/私有端口号(49152~65535)
1.3.4 名称、地址和DNS

在TCP/IP中,每台计算机的每个链路层接口至少有一个IP地址(足以识别主机,但不方便记忆或操作)。DNS是一个分布式数据库,提供主机名和IP地址之间的映射。域名建立是有层次的,以.com、.org、.gov、.in、.uk和.edu等域结尾。

1.4 Internet、内联网和外联网
  • Internet/internet:internet表示使用常见协议族互联的多个网络,Internet表示可使用TCP/IP通信的世界范围的主机集合。Internet是一个internet,但反过来说是不对的。
  • 内联网:是一个用于描述专用互联网络的术语,通常由一个商业机构或其他企业来运行。用户可使用虚拟专用网(VPN)连接到(如企业)内联网。
  • 外联网:如一个企业或商业机构希望建立一个网络,其中包含可供合作伙伴或其他相关公司通过Internet访问的服务器。这种涉及VPN的网络通常被称为外联网。
  • 虚拟专用网(VPN)
1.5 设计应用
1.5.1 客户机/服务器模式

大多数网络应用被设计成一端是客户机,另一端是服务器。服务器为客户机提供某类服务,例如访问服务器主机中的文件。可以将服务器分为两类:迭代和并发

迭代

I1: 等待客户机请求到达。
I2: 处理客户机请求。
I3: 将响应发送给请求的客户机。
I4: 回到步骤I1。

并发

C1: 等待客户机请求到达。
C2: 启用一个新服务器实例来处理客户机请求。(这可能设计创建一个新的进程、任务或线程,它依赖于底层操作系统的支持)
这个新的服务器处理一个客户机的全部请求。当请求的任务完成后,这个新的服务器终止。同时,原有服务器实例继续执行C3。
C3: 回到步骤C1。

1.5.2 对等模式

有些应用以更分布式的形式设计,其中没有专门的服务器。每个应用既是客户机,又是服务器,有时同时是两者,并能转发请求。这种应用称为对等P2P应用。一组P2P应用共同形成一个应用网络,也称为覆盖网络

1.5.3 应用程序编程接口(API)
1.6 标准化进程
1.7 实现和软件开发
1.8 与Internet体系结构相关的攻击
  • 欺骗Internet体系结构交付数据报是基于目的IP地址。因此,恶意用户能在自己发送的每个IP数据报的源地址字段中插入任何IP地址,这种行为称为欺骗。(难以确定接受的数据报来源/真实来源
  • 拒绝服务(DoS):涉及消耗大量的重要资源,以导致合法用户被拒绝访问。
  • 未授权访问:涉及以未授权方式访问信息或资源。可以采用多种技术实现。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
非扫描版TCP/IP详解卷一,你值得拥有: 《TCP/IP详解,卷1:协议》是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。作者用Lawrence Berkeley实验室的tcpdump程序来捕获不同操作系统和TCP/IP实现之间传输的不同分组。对tcpdump输出的研究可以帮助理解不同协议如何工作。 本书适合作为计算机专业学生学习网络的教材和教师参考书。也适用于研究网络的技术人员。 目 录 译者序 前言 第1章 概述 1 1.1 引言 1 1.2 分层 1 1.3 TCP/IP的分层 4 1.4 互联网的地址 5 1.5 域名系统 6 1.6 封装 6 1.7 分用 8 1.8 客户-服务器模型 8 1.9 端口号 9 1.10 标准化过程 10 1.11 RFC 10 1.12 标准的简单服务 11 1.13 互联网 12 1.14 实现 12 1.15 应用编程接口 12 1.16 测试网络 13 1.17 小结 13 第2章 链路层 15 2.1 引言 15 2.2 以太网和IEEE 802封装 15 2.3 尾部封装 17 2.4 SLIP:串行线路IP 17 2.5 压缩的SLIP 18 2.6 PPP:点对点协议 18 2.7 环回接口 20 2.8 最大传输单元MTU 21 2.9 路径MTU 21 2.10 串行线路吞吐量计算 21 2.11 小结 22 第3章 IP:网际协议 24 3.1 引言 24 3.2 IP首部 24 3.3 IP路由选择 27 3.4 子网寻址 30 3.5 子网掩码 32 3.6 特殊情况的IP地址 33 3.7 一个子网的例子 33 3.8 ifconfig命令 35 3.9 netstat命令 36 3.10 IP的未来 36 3.11 小结 37 第4章 ARP:地址解析协议 38 4.1 引言 38 4.2 一个例子 38 4.3 ARP高速缓存 40 4.4 ARP的分组格式 40 4.5 ARP举例 41 4.5.1 一般的例子 41 4.5.2 对不存在主机的ARP请求 42 4.5.3 ARP高速缓存超时设置 43 4.6 ARP代理 43 4.7 免费ARP 45 4.8 arp命令 45 4.9 小结 46 第5章 RARP:逆地址解析协议 47 5.1 引言 47 5.2 RARP的分组格式 47 5.3 RARP举例 47 5.4 RARP服务器的设计 48 5.4.1 作为用户进程的RARP服务器 49 5.4.2 每个网络有多个RARP服务器 49 5.5 小结 49 第6章 ICMP:Internet控制报文协议 50 6.1 引言 50 6.2 ICMP报文的类型 50 6.3 ICMP地址掩码请求与应答 52 6.4 ICMP时间戳请求与应答 53 6.4.1 举例 54 6.4.2 另一种方法 55 6.5 ICMP端口不可达差错 56 6.6 ICMP报文的4.4BSD处理 59 6.7 小结 60 第7章 Ping程序 61 7.1 引言 61 7.2 Ping程序 61 7.2.1 LAN输出 62 7.2.2 WAN输出 63 7.2.3 线路SLIP链接 64 7.2.4 拨号SLIP链路 65 7.3 IP记录路由选项 65 7.3.1 通常的例子 66 7.3.2 异常的输出 68 7.4 IP时间戳选项 69 7.5 小结 70 第8章 Traceroute程序 71 8.1 引言 71 8.2 Traceroute 程序的操作 71 8.3 局域网输出 72 8.4 广域网输出 75 8.5 IP源站选路选项 76 8.5.1 宽松的源站选路的traceroute 程序示例 78 8.5.2 严格的源站选路的traceroute 程序示例 79 8.5.3 宽松的源站选路traceroute程序 的往返路由 80 8.6 小结 81 第9章 IP选路 83 9.1 引言 83 9.2 选路的原理 84 9.2.1 简单路由表 84 9.2.2 初始化路由表 86 9.2.3 较复杂的路由表 87 9.2.4

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值