TCP-IP详解 卷1 学习笔记

第一章 概述

分层

网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议族,比如TCP/IP,是一组不同层次上的多个协议的组合。TCP/IP通常被认为是一个四层协议系统。
在这里插入图片描述
每一层都负责不同的功能:

  • 链路层,也称为数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。
  • 网络层,处理分组在网络中的活动,例如分组的选路。网络层协议包括IP协议,ICMP协议(互联网控制报文协议)以及IGMP协议(互联网组管理协议)。
  • 传输层,也称为运输层,主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中,有两个不同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议)。TCP为两台主机提供高可靠性的数据通信。他说做的工作包括把应用程序交给他的数据分成合适的小块给下面的网络层,确认收的分组,设置发送最后确认分组的超市时钟。由于应用层提供了高可靠性的端到端通信,因此应用层可以忽略这些细节。而UDP为应用层提供了一种非常简单的服务。他只是把称作数据报的分组从一台主机发送到另一台主机,而不保证数据报能到达另一端。任何可靠性必须有应用层来提供。
  • 应用层,负责处理特定应用程序的细节。几乎不同的TCP/IP实现都会提供下面这些通用的应用程序:Telnet远程登录;FTP文件传输协议;SMTP简单邮件传送协议;SNMP简单网络管理协议;

应用层的应用程序通常是一个用户进程,而下三层则一般在操作系统内核中执行。应用层关心的是应用层的细节,而不是数据在网络中的传输活动。下三层对应用程序一无所知,但它们要处理所有通信细节。

连接网络有两种途径,一种是路由器,一种是网桥。路由器有三层物理层、数据链路层、网络层。而网桥只有两层物理层、数据链路层。路由器是在网络层上对网络进行连接,网桥是在数据链路层上对网络进行连接。TCP/IP倾向于使用路由器而不是网桥来连接网络。

TCP/IP的分层

在这里插入图片描述
TCP和UDP都使用IP作为网络层协议。
ARP(地址解析协议)和RARP(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换IP层和网络接口层使用的地址。网络接口就是数据链路层(也称网络接口层)。

互联网地址

互联网上的每个接口必须有一个唯一的Internet地址,也称为IP地址。IP地址长度32bit。五类不同的互联网地址格式如下图:
在这里插入图片描述
这些32位的地址通常写成四个十进制数,其中每个整数对应一个字节。这种表示法称为点分十进制表示法。
在这里插入图片描述
区分各类地址最简单的方法就是看他的第一个十进制整数。如上图。需要注意,有多个接口的主机具有多个IP地址,其中每个接口都对应一个IP地址。
有三类IP地址:单播地址(目的端为单个主机)、广播地址(目的端为给定网络上的所有主机)以及多播(目的端为同一组内的所有主机)。

域名系统

可以通过IP地址识别主机上的网络接口,进而访问主机,但人们更喜欢使用主机名来访问主机。(IP地址难记)。但最终计算机底层依然是通过IP地址来访问主机,使用主机名,即域名,来访问主机是方便人们记忆。那这个时候当人们使用主机名时就需要一个主机名到IP地址的转换。这种转换就是由域名系统(DNS)来完成。域名系统是一个分布的数据库,由他来提供IP和主机名之间的映射信息。

封装

当应用程序准备好了数据,使用TCP传输数据时,数据会被送入协议栈中,然后逐个通过每一层直到被当做一串比特流送入网络。其中每一层都会对收到的数据增加一些信息,有时还要增加尾部信息。如下图所示,TCP传给IP的数据单元称为TCP报文段。IP传给网络接口层(数据链路层)的数据单元称为IP数据报。通过以太网传输的比特流称为帧。
在这里插入图片描述
UDP数据和TCP数据基本一致。唯一不同的是UDP传给IP的数据单元称为UDP数据报,而且UDP首部长为8字节。

在传输层中有TCP、UDP、ICMP和IGMP都要向IP传送数据,因此IP必须在生成的首部中加入某种标识,以表明该数据是属于上层传输层中的哪个协议。为此,IP首部加入一个长度为8bit的数值,称作协议域。1表示ICMP、2表示IGMP、6表示TCP、17表示UDP。

同样,应用层都要使用传输层的TCP或UDP来传送数据。那运输层(传输层)协议在生成报文首部时需要存入一个应用程序的标识,已识别该数据是哪个应用程序的。TCP和UDP都使用一个16bit的端口号来表示不同的应用程序。TCP和UDP把源端口号和目的端口号分别存入报文首部中。

网络接口层要发送和接受IP、ARP和RARP的数据,因此必须在数据链路层中的帧首部加入某种标识,以指名生成数据的网络层协议。为此,以太网帧首部也有一个16bit的帧类型域。

以太网帧中的帧类型域不仅可以标识网络层的协议,还可以用来标识其他类型的协议,包括数据链路层自身的协议。这个机制允许数据链路层在接收到帧时,知道该帧的数据部分是传递给数据链路层自身的协议(如ARP),还是应传递给网络层的协议(如IPv4)。

分用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值