《图解TCP/IP》读书笔记

第一章,网络基础知识

7,应用层

<应用层>

TELNET,SSH,HTTP,SMTP,POP,SSL/TLS,

FTP,MIME,HTML,SNMP,MIB……

6,表示层
5,会话层
4,传输层 TCP,UDP,UDP,DCDC
3,网络层 ARP,IPv4,IPv6,ICMP,IPsec
2,数据链路层 以太网,无线LAN,PPP
1,物理层

1,计算机网络出现的背景:从独立模式到网络互连模式,从计算机通信到信息通信,计算机网络。

2,计算机与网络发展的七个阶段:批处理,分时系统,计算机之间的通信。计算机网络的产生。互联网的普及……

3, 协议:计算机与计算机之间通过网络实现通信时事先达成的一种约定。是不同的厂商设备,不同的CPU,不同的操作系统的计算机,只要遵循相同的协议就能够实现通讯。

CUP:中央处理器,调度执行程序,常用CUP,Intel,Core,Intel,Atom,ARM Cortex。

多任务调度:为了让多个程序同时运行,操作系统采用CPU时间片轮机制,多个进程之间进行切换 。合理调度。

OS:操作系统,基础软件,集合CPU管理,内存管理,计算机外围设备管理,程序运行设备管理。常用系统,unix,Windows,Mac OS X,linux;

4,分组交换协议:将大数据分割为小的包(packet)进行传输。报文首部:计算机通信会在每个分组中附加源主机地址和目标地址送给通信路线。

5,协议分层与OSI参考模型;OSI参考模型将通信协议中必要的功能分为7层,上下层之间进行交互的是所遵循的约定叫做“接口”。同一层之间的交互所遵循的约定叫做“协议”。(OSI协议与OSI参考模型不同)

OSI参考模型中各个分层的作用:

应用层:为应用程序提供服务并规定通信相关的细节,针对特定应用的协议,包括文件传输,电子邮件,远程登录等协议。

表示层:将应用处理的信息转换为适合网络传输的格式,或者将下一层的数据转化为上一层能够处理的格式,主要负责数据格式的转换。将设备固有的数据格式转换为网络标准传输格式,不同设备对同一比特流的解释可能不同,使他们保持一致。

会话层:通信管理,负责建立和断开通信连接(数据流动的逻辑通路),管理传输层以下的分层,以及数据的分割等数据传输相关的管理。(何时建立/断开连接,保持多久的连接)

传输层:起着可靠传输的作用,只在通信双方节点上进行处理(确保数据被可靠的传输送到目标地址),无需路由器上处理。

网络层:将数据传输到目标地址,目标地址可以是多个网络通过路由器连接的而成的某一个地址,负责寻址和路由选择。(经过那个路由传递到目标地址)

数据链路层:负责物理层面上的互连的,节点之间的通信出传输,将0,1序列划分为具有意义的数据帧传送给对端(数据帧 的生成与接收,数据帧与比特流的之间的准换)

物理层:负责0,1比特流与电压高低,光的闪灭之间的互换,界定连接器与网络的规格。

6,OSI参考模型通信处理举例

1,7层OSI模型,如何模块化通信传输:在每个分层上,发送端添加首部包装信息,经过路由器,接受端分离首部恢复数据。

2,会话层以上 的处理 :

在应用层的协议(Http)负责目标地址(请求行)以及写入内容(请求报文)。表示层即数据的表现形式(格式化编码),将数据特有的格式转换为网络标准的格式在发送出去,计算机接受到数据在转换成自己的格式处理。即数据格式之间相互转换的分层。会话层即决定采用哪种连接方式 (标记发送顺序)。

3,传输层以下的处理:

传输层即进行建立连接或断开连接的处理,在两个主机之间创建逻辑上的通信连接,确保数据是否到达,没有到达重发。保证数据传输的可靠性。网络层将数据从发送端主机发送到接收端主机。数据链路层负责实现每一个区间内的通信。通信实际上是通过物理的传输介质实现的,数据链路层在传输介质互连的设备进行数据处理。物理层将数据的01转换为电压和脉冲光传输给物理的传输介质,相互直连的设备通过MAC(Media Access Control,介质访问控制)实现传输。物理层将MVC地址信息的首部附加到从网络层转发过来的数据上,将其发送到网络。

7,传输方式的分类:

1,面向有连接和无连接;

面向有连接(ATM,帧中继,TCP等,在通信传输之前,先打开一个连接,关闭无法发送数据):在通信传输前后,专门进行建立和断开连接的处理,无法通信,避免发送无谓的数据。

和面向无连接型(以太网,IP,UDP等协议,无需确认对端是否存在,发送端可随时发送数据。):接受端需要确定是否收到了数据。

2,电路交换和分组交换(TCP/IP):网络通信的大致分类,

电路交换:交换机负责数据的中转处理,计算机首先被连接到交换机上,交换机之间通过通信线路连接,将交换机和目标主机之间建立的通信线路称为建立连接。

分组交换:让连接到通讯电路的计算机将所要发送的数据分成多个数据包,并按找一定顺序排练之后分别发送,所有计算机可以一起发送数据,每个分组的首部写入了发送地址和接受地址。在分组交换中由分组交换机(路由器)连接通信线路,发送端将数据分组发送给路由器,路由器接收到这些分组的数据后会缓存在自己的缓存区,然后在转发给目标计算机,分组交换也称蓄积交换,路由器收到分组数据按照顺序缓存到相应的队列当中,以先进先出的顺序发送。计算机与路由器之间以及路由器与路由器之间只有一条通信线路(共享线路),

3,根据接收端数量分类:

单播(Unicast):早期的固定电话。一对一通信。

广播(Broadcast):一台主机与其之相连的其他主机,电视播放,将电视信号一齐发送给非特定的多个接收对象,广播范围(广播域)。

多播(Multicast):与广播类似,限定某一主机作为接收端,电视会议,即确定接收端的位置。

任播(Anycast):是指对接收端有选择的通信,与多播相似,选择最优目标主机发送,选中返回单播信号,随后进行单播。DNS根域名解析系统。

8,地址

1,地址的唯一性,层次性,MAC地址和IP地址在标识一个通信主体时虽然都具有唯一性,但是只有IP地址层次性。

MAC地址有设备制造厂商对网卡(NIC)进行指定,IP地址有网络号和主机端口号两部分组成,即使通信主体的IP地址不同,若主机号不同,网络号相同,说明他们处于同一个网段。网络传输中,每个节点会根据分组数据的地址信息判断报文由那个网卡发送,为此,各个地址会参考一个发出接口列表(自动生成),MAC寻址叫地址转发表(记录实际的MAC地址本身),而IP寻址所参考的表叫路由控制表(记录集中之后的网络号与子掩码)。

9,网络的构成要素:

搭建网络的设备
网卡 使计算机联网的设备,
中继器(Repecler) 从物理层上延长网络的设备
网桥(Bbridge)/2层交换机 从数据链路层上延长网络的设备
路由器(Router)/3层交换机 从网络层转发分组数据的设备
4-7层交换机 处理传输层以上层网络传输的设备
网关(Cateway) 转换协议的设备

1,通信媒介与数据链路:计算机之间通过电缆相互连接,电缆可分为双绞线电缆,光纤电缆,同轴电缆,串行电缆,媒介分电波,微波等不同的电磁波。

传输速率与吞吐量:数据传输的过程中,两个设备之间数据流动的物理速度称为传输速率,单位为bps(Bits Per Second,每秒比特数),传输速率不是指单位数据流动的速度,而是指单位时间内传输的数据量有多少。传输速率有被称之为带宽(Bandwidth),带宽越大网络传输能力就越强。主机之间的实际的传输速率被称为吞吐量,单位与带宽相同,吞吐量还衡量CPU处理能力,网络的拥堵程度,报文中数据字段的占有份额。

2,网卡:网络接口卡,也称网络适配器,网卡,LAN卡。联网时必须使用。

3,中继器(集线器):是在OSI模型的物理层上延长网络的设备,由电缆传过来的电信号或光信号经由中继器的波形调整和放大再传给另一个电缆。即使数据链路层出现某些错误,中继器任然转发数据。中继器无法改变传输速率。且不能在传输速度不同的媒介之间转发。可以提供多个端口服务。

4,网桥/两层交换机:数据链路层上连接两个网络的设备,基于MAC地址进行处理。根据数据帧的内容转发数据给相邻的其他网络。数据损坏不发送。没有连接网段个数的限制。一般连接相同类型的网络,也可以连接传输速率不同的网络。

5,路由器/三层交换机:在网络层上连接两个网络,并对分组报文进行转发的设备,根据IP地址进行处理,路由器可以连接不同的数据链路,分担网络负荷的作用。

6,四到七层交换机:处理传输层到应用层的数据,为了能通一个URL将前端的访问分发到后台的多个服务器上,可以在这些服务器的前端加一个负载均衡器(4--7层交换机的一种),带宽控制。

7,网关:从传输层到应用层的数据进行转换和转发的设备,负责对数据进行转换,通常使用表示层或者应用层网关,在两个不能进行直接通信的协议之间进行翻译,实现两者之间的通信。代理服务器也是网关的一种,称为应用网关,客户端与服务器之间无需在网络层上直接通信,而是从传输层到应用层对数据和访问进行各种控制可处理,防火墙就是一款通过网关通行的产品。

10,现代网络实态

1,网络的构成:骨干或核心类似于高速公路,通常选择高速路由器相互连接使之快速传输大量数据,网络中相应于出入口的部分被称为边缘网络,常用功能路由器和3层交换机,连接边缘网络的部分被称为接入层或汇聚层,连接国外的网络或者连接跨域较宽的网络时,慢的原因是因为线路传输速率慢多网段连接或长距离连接。,

2,互联网通信:连接互联网之后,汇集到无线局域网路由器和最近的交换机事务通信会再次被连接到接入层。有时可直接连接边缘网络。

3,移动通信:手机一开机就会与最近的基站发生无线通信,基站本身也相当于网络的接入层。由一部手机发送的信息到另一部手机时,发出的请求会传输到另一部手机的注册基站,如果接听就建立连接。基站接受的通信请求被汇集到边缘网络(控制中心),之后被接入到主干网。

利用虚拟化技术,根据使用者的情况动态调整必要资源的机制称为云, 将虚拟化的系统根据需要自动地进行动态管理的部分被称为“智能协调层”。

第二章 TCP/IP基础知识

1,TCP/IP的具体含义:应用协议,传输协议,路由控制协议,网际协议;

2,TCP/IP的标准化:开放性,实用性。

3,互联网基础知识:

互联网中的每个网络都是由骨干网(BackBone)和末端网(Stub)组成的。每个网络之间通过NOC(网络控制中心)相连,运营商不同,网络连接方式也不同,连接异构网络需要IX(网络交换中心)的支持,

4,ISP和区域网:连接互联网需要向ISP或区域网提出申请,

5,TCP/IP协议分层模型

物理层(硬件):TCP/IP是在网络互连的设备之间能够通信的前提下才被提出的协议。

网络接口层(数据链路层):利用以太网中的数据链路层进行通信,属于接口层,可当做让NIC起作用的“驱动程序”也无妨,驱动程序是在操作系统与硬件之间起桥梁作用的软件,计算机外围附加设备或扩展卡,不是直接插到电脑或者电脑的扩展槽上就能使用换需要相应的驱动程序的支持。

互联网层()网络层):使用IP协议,将分组的数据包发送到目标地址,TCP/IP分层中的互连网层与传输层的功能通常由操作系统提供,尤其是路由器,它必须实现通过互联网转发分组数据包的功能,IP协议为分组交换的一组协议,但是它不具有重发机制,属于非可靠性传输协议,

ICMP :IP数据包在发送途中发生异常,无法到达,需要发给发送端一个异常通知,ICMP就是为这一功能而制定。

ARP:从分组数据包的IP地址中解析出物理地址(MAC)地址的一种协议。

传输层:

TCP是一种面向有连接的传输层协议,它保证两端通行主机之间的通信可达,正确处理传输过程中丢失的,传输顺序乱等异常情况。TCP能够有效利用带宽,缓解网络拥堵。建立与断开需要7次发包收包。

tcp如何保证传输的可靠性:

  • 将应用数据分割为tcp认为合适发送的数据包。
  • 超时传送,当tcp发送一个段后,它会启动一个定时器,等待目的端确认受到这个报文段,如果没有收到确认,将重发这个报文段。
  • 当tcp收到tcp链发送的的数据时,会发送一个确认,(对于收到的请求做一个确认),这个请求不会立即发送,会推迟几秒
  • 若tcp收到包,校验出包有错,丢弃报文段,不给出响应,tcp对端会重发。
  • 对于失序数据进行重排序,然后教给应用层(tcp报文段作为ip数据报进行传输,而ip数据报的到达会失序,)因此tcp也可能失序。
  • 对于重复数据,直接丢弃。
  • tcp可以进行流量控制,防止较快主机导致较慢主机的缓存区溢出

UDP有别于TCP,它是一种面向无连接的传输层协议,常用与分组数据较少或多播,广播通信以及视屏通信。

应用层:TCP/IP分层中将OSI参考模型中会话层,表示层和应用层的功能都集中到了应用程序中实现,包括万维网,电子邮件,文件传输(FTP),远程登录,网络管理。

6,TCP/IP分层模型与通信示例:

每个分层中,都会对所发送的数据附件一个首部,在这个首部中包含了该层次必要的信息,如发送的目标地址以及协议相关信息。

包,数据帧,数据报,段,消息:包为全能性术语,帧表示数据链路层中包的单位,而数据报是IP和UDP 等网络层以上的分层中包的单位,段则表示TCP数据中流的信息,消息是指应用协议中数据的单位。

包首部就想协议的脸:网络中传输的数据包由两部分组成,首部加数据。在数据包的首部,标明协议如何读取数据,

发送数据包:假设发送邮件

  1. 应用程序处理,应用程序会进行编码处理(OSI表示层),建立通信连接发送数据(OSI会话层),在发送邮件的时候建立TCP连接。
  2. TCP模块处理,TCP根据应用的指示,负责建立连接,发送数据以及断开连接,TCP提供将应用层发来的数据帧顺利的发送到对端的可靠传输。需要在应用层数据前端附件TCP首部,(包含源端口号和目标端口号,序号(发送的是包中那部分数据)以及校验和(判断数据是否损坏)),之后将附加TCP首部的包发给IP。
  3. IP模块处理:将TCP传过来的TCP首部和TCP数据合起来当做自己的数据,并在TCP首部的前端在加上自己的IP首部,IP首部中包含接受端IP地址和发送端IP地址。还有用来判断其后数据是TCP还是UDP的信息。IP包生成后参考路由控制表决定接受此IP包的路由或主机,IP包将被发送给连接路由器或主机网络接口的驱动程序,可以利用ARP查找IP地址对应的MAC地址。
  4. 网络接口(以太网驱动)的处理:从IP传过来IP包,对于以太网驱动来讲,就是数据,在数据上附加以太网首部并进行发送处理,以太网首部中包含接受端的MAC地址,发送端MAC地址以及标志以太网类型的以太网数据协议,以太网数据包通过物理层传输给接收端。FCS由硬件计算,添加到包的最后(判断数据包是否被破坏)。

7,经过数据链路层的包:每个包首部中至少都会有两个信息,一个为发送端和接受端地址,另一个为上一层协议类型,

以太网会用MVC地址,IP地址会用到IP地址,而TCP/IP则会用端口号作为识别两端主机的地址。

8,数据包接受处理:包的接受流程是发送端的逆序过程

  • 5,网络接口(以太网驱动)的处理:主机收到以太网包后,会从以太网的包首部找到MAC地址判断是否发给自己的包,不是丢弃数据。是就查找以太网包首部中的类型域从而确定以太网协议所传送过来的数据类型,
  • 6,IP模块的处理:即如果判断得出包首部中的IP地址与自己的IP地址匹配,则可接受并从中查找上一层协议,如果为TCP就给TCP处理,如果为UDP就给UDP处理,对于有路由器的情况,接收端地址往往不是自己的地址,此时,需要借助路由控制表,在调查应该送往的主机或路由器。
  • 7,TCP模块处理,首先会计算一下校验和,判断是否被破坏,然后检查是否是按照序号接收数据,最后检查端口号,确定具体的应用程序。数据接收完成会返送“确认回执”,若接收端未能接收,发送端会一直发送。
  • 8,应用程序的处理:接收端应用程序会直接接收发送端发送的数据,如果未能成功接收,就发送一个“处理异常”的回执给发送端。

SNS(Social Network Service ),中文叫社交网络。即是一种即使共享,即使发布消息该圈内特定联系人的一种服务。

 

第三章 数据链路

1,数据链路层的协议定义了通过通信媒介互连的设备之间的传输规范,数据链路层处理的不是单纯的0,1序列,该层把他们集合为一个叫做帧的块,然后在进行传输的。,2,在以太网与FDDI(光纤分布式数据接口)的规范中,不仅包含ISO参考模型第二层数据链路层,也规定了第一层物理层的规格,而在ATM中(异步传输方式)规范中,还包含第三层网络层的一部分功能。

网络拓扑:网络的连接和构成的形态,包括总线型,环型,星型,网状型。,

3,数据链路的相关技术:

MAC地址:用于识别数据链路层中互连的节点,在以太网或FDDI中,根据规范使用MAC地址。在总线型与环路型的网络中,先暂时获取所有目标站的帧,然后在通过MAC 寻址,MAC地址长48比特,在使用NIC的情况下,MAC地址一般会烧入到ROW中,所以任意一个MAC地址都是唯一的。

共享介质型网络:网络可分为共享介质型(多个设备共享一个通信介质的网络)和非共享介质型。

  1. 共享介质型网络中有两种介质访问控制方式:争用方式,令牌传递方式。
  2. 争用方式:是指争夺获取数据传输的权利,也称CAMA(载波监听多路访问),通常令网络中的各个站采用先到先得的方式占用信道发送数据,多站同时发送帧,产生冲突现象。
  3. 令牌传递方式:沿着令牌环发送一种叫做“令牌”的特殊报文,控制传输的一种,只有获得令牌的站才能发送。

非共享介质网络:指不共享介质,是对介质采用专用的一种传输控制方式。网络中的每个站直连交换机,由交换机负责转发数据帧,发送端与接受端不共享通行介质,一般采用全双工通信方式。通过交换机转发数据帧, 也可以根据交换机的高级特性构建虚拟局域网(VLAN),进行流量控制。

半双工与全双工通信:

半双工是指,只发送或者只接受的通行方式,类似与无线电收发器,两端同时说话,听不见对方说话,而全双工不同,允许在同一时间即可以发送数据也可以接受数据,类似与电话。

全双工通信;在使用交换机与双绞线电缆(或光纤电缆)的情况,即可以通过交换机的端口与计算机之间进行一对一的连接,也可以通过相连电缆内部的收发线路分别进行接受和发送数据,即实现同时收发的全双工通信。

根据MAC地址转发:

在使用同轴电缆的以太网等介质共享网络时,使用交换集线器,将非介质共享型网络使用的交换机应用在以太网中的技术,又称以太网交换机,它根据数据链路层中每个帧的目标MAC地址,,决定从那个网络端口发送数据(根据转发表),数据链路层的每个通过点在接到包时,会从中将源MAC地址以及曾经接收该地址发送的数据包的接口作为对应关系记录到转发表中,以某个MAC地址作为源地址的包由一接口接收,实际上可以理解为该MAC地址就是该接口的目标。可说该MAC地址作为目标地址的包,经由该接口送上出即可,这一过程称自学过程。

交换机的转发方式:一种叫做存储转发,另一种叫直通转发。

以太网:

以太网规范简单,易于NIC(网卡)即驱动程序实现,

以太网的连接形式,一般采用多台终端使用同一根同轴电缆的共享介质型连接方式,

传输速度与计算机内部的表现值,2^10 ==1000;1k = 1024;1M = 1024k;1G = 1024M;

传输速率:1k = 1000,1M =1000k; 1G = 1000M;

无线通信:

使用电磁波,红外线,激光等方式进行传播数据,

无线PAN,LAN,MAN,RAN,WAN.

 

PPP:

Point-to-point Protocol是指点对点,即一对一连接的计算机协议,ppp相当于计算机OSI参考模型的第二层的数据链路层,ppp可以使用电话线,专用线,ATW线。ppp包括两个协议,一个是不依赖上层的LCP协议(Link Control Protocol),另一个是依赖上层的NCP(Network Control Protocol)协议,如果上层为IP,则叫IPCP.

LCP:主要负责建立和断开连接,设置最大接受单元(MRU),设置验证协议(PAP或CHAP),以及设置是否进行通行质量的监控,IPCP则负责IP地址设置以及是否进行TCP/IP首部压缩等设备。

其他数据链路:

ATM:(Asynchronous Transfer Mode):是以一个叫做信元(5字节首部加48字节数据)的单位进行传输的数据链路,其线路占用时间短和能够高效传输大容量数据等特点主要用于广域网的连接,是一种面向连接的链路通讯前要设置通信线路,

第四章,IP协议

IP协议:即网际协议,TCP/IP协议的互联网层,主要是由IP(Internet Protocol)和ICMP(Internet Conttrol Message Protocol)这两个协议组成.

IP(IPv4,IPv6)相当与OSI参考模型中的第三层,网络层。作用为实现终端节点之间的通信,也称点对点(end -to- end)通信,数据链路层的作用是在互联的同一中数据链路的节点之间进行包的传递,而一旦跨越多种数据链路,就需要借助网络层,网络层可以跨越不同的数据链路,即使是在不同的数据链路层上亦可以实现两个终端节点的数据包传输。

主机与节点:在互联网中那些配有IP地址的设备叫做“主机”,主机为具有IP地址但不进行路由控制的设备,即配有IP地址又具有路由控制能力的设备叫做“路由器”,节点为路由器和主机的统称。

数据链路层提供两个设备之间的通信,,而IP则负责在没有直连的两个网络之间进行通信传输。

IP基础知识:数据链路层的MAC地址,MAC地址正是用来标识同一链路中不同计算机的一种识别码,网络层IP地址用于在"连接到网络的所有主机识别出进行通信的目标地址“, 在TCP/IP通信中,所有的主机或路由器都必须设定自己的IP地址。IP地址的形式不会被改变,在网桥或交换集线器等物理层或数据链路层数据包转发设备上,不需要设置IP地址。

路由控制(Routing):是指将分组数据发送到最终目标地址的功能,即使网络非常复杂,也可以通过路由控制确定到达目标地址的通路。

发送数据至最终目标地址:,Hop译为跳,是指在一个网络的区间中,IP包正是在网络中一个跳间转发的路径。(1 Hop 是指利用数据链路层以下分层的功能传输数据帧的一个区间,以太网等数据链路中,一跳指源MAC地址到目标MAC地址之间的传输帧的区间,即主机或路由器网卡不经过其他的路由器而能直接到达的相邻主机或路由器网卡之间的一个区间,) 

多跳路由:是指路由器或主机在转发IP数据包时只指示下一个路由器或主机,而不是将到最终目标地址为止的所有通路都指定下来。因为每个区间(跳)在转发IP数据包时会指定下一跳的操作。直到最终的目标地址。

路由控制表: 为了将数据包发送给目标地址,所有的主机都维护一张路由控制表(Routing table),记录IP数据在下一次要发送到那个路由器,,IP包根据路由表在各个链路层上传输。

数据链路的抽象化:不同数据链路各自最大的传输单位不同(MTU),上下层MTU数据大小不同,所以IP进行分片处理(IP fragmentation),将较大的IP包分解为多个较小的IP包。

IP属于面向无连接型:即不需要建立与对端目标地址的连接,上层如果遇到需要发送的IP的数据,会立刻压缩称IP包发送出去。

IP地址的基础知识:在TCP/IP 通信时,使用IP地址识别主机和路由器,IP地址由32位正整数表示,每一台主机上的每一块网卡都需要设置Ip地址。

IP地址由网络和主机两部分标识组成,网络标识在数据链路的每个段配置不同的值,网络标识必须保证相互连接的每个段的地址不能重复。相同段内的相连的主机必须有相同的网络地址,IP地址的“主机标识”则不允许在同一个网段内重复出现。

 

 

 

 

 

 

 

 

你可能感兴趣的:(《图解TCP/IP》读书笔记)