TCPIP基础知识分析

合集下载

学习网络协议基础知识TCPIP和HTTP的解析

学习网络协议基础知识TCPIP和HTTP的解析

学习网络协议基础知识TCPIP和HTTP的解析学习网络协议基础知识:TCP/IP和HTTP的解析网络协议在现代互联网的发展中起到了至关重要的作用,其中TCP/IP和HTTP是两个常见的网络协议。

本文将对TCP/IP和HTTP的基础知识进行解析,帮助读者更好地了解和学习网络协议。

一、TCP/IP协议TCP/IP(Transmission Control Protocol/Internet Protocol)是一种基于分组交换网络的通信协议。

它是互联网的核心协议之一,负责数据在网络中的传输和通信。

1. IP协议IP(Internet Protocol)协议是TCP/IP协议族的核心协议之一。

它负责将数据进行分组,并通过IP地址将数据包送达目的地。

IP地址是一个由数字和点分十进制表示的地址,它唯一标识网络中的每个主机。

2. TCP协议TCP(Transmission Control Protocol)是TCP/IP协议族中的一种协议,它建立在IP协议的基础上,负责实现可靠的数据传输。

TCP通过三次握手建立连接、提供数据流传输、进行数据分片重组和错误恢复等功能,确保数据的可靠传输。

3. UDP协议UDP(User Datagram Protocol)是TCP/IP协议族中的一种协议,它也建立在IP协议的基础上,但是与TCP不同,UDP是一种面向无连接的协议。

UDP不保证数据传输的可靠性和顺序性,但是传输速度较快,适用于一些实时性要求较高的应用场景。

二、HTTP协议HTTP(Hypertext Transfer Protocol)是一种用于在Web上进行数据传输的协议,它是建立在TCP/IP协议之上的。

1. 请求-响应模型HTTP采用了请求-响应模型,即客户端发送请求,服务端返回响应的方式进行数据传输。

客户端发送的请求内容包括请求行、请求头部和请求体,服务端返回的响应内容包括响应状态行、响应头部和响应体。

TCP-IP基础知识

TCP-IP基础知识

OSI模型包含许多被分割成层的组件。

在网络数据通信的过程中,每一层完成一个特定的任务。

当传输数据的时候,每一层接收到上面层格式化后的数据,对数据进行操作,然后把它传给下面的层。

当接收数据的时候,每一层接收到下面层传过来的数据,对数据进行解包,然后把它传给上一层。

虚电路结构增强了OSI模型每一层的模块性;实现每一层的软件可以被栈的开发人员和工作站的管理人员移走、替代和更新而是影响它上面和下面的层。

这允许灵活地改变网络类型和更新层来处理错误和增加新特性。

每一层都利用其上层和下层的服务来维持它和远地主机上对应层的虚电路。

第二课 TCP/IP协议一.Internet的现状1. TCP/IP的发展过程及组织ISOC(Internet Society)应用软件 IABIETF IANA IRTF2.说明TCP/IP的重要性连接不同系统的技术开放系统,可通过Request for comments开发自己的TCP/IP解法与Internet连接:节省资金提供强有力的WAN连接:可路由,为广域网设计的二.TCP/IP协议族1.TCP/IP协议族英文全称:Transmission Control Protocol/Internet Protocol中文全称:传输控制协议/互联网协议TCP/IP实际上是一族协议,不是单一的协议,详见【附图一】◇ARP(Address Resolution Protocol):地址解析协议◇RARP(Reverse Address Resolution Protocol):逆向地址解析协议如果一台IP机器不带磁盘,启动时无法知道其IP地址。

但它知道它的MAC地址。

RARP协议是丢失灵魂者的精神病分析家。

它发出一个分组,其中包括其MAC地址,要求回答这一MAC地址的IP地址。

一个称为RARP服务器的特定机器作出响应并回答。

至此,这一身份危机就获得解决。

像一位优秀的分析家一样RARP使用已知信息,即机器的MAC地址,求得其IP地址完成机器ID的确定。

TCPIP基础82个知识点

TCPIP基础82个知识点

1.不同厂商、不同型号、运行不同操作系统的计算机之间能够通过TCP/IP协议栈实现相互之间的通信。

2.TCP/IP起源于60年代末美国政府资助的一个分组交换网络研究项目,到90年代得到了广泛的应用。

3.TCP/IP是一个真正的开放系统,是网络互联的基础。

4.20世纪60年代以来,计算机网络得到了飞速增长。

各大厂商为了在数据通信网络领域占据主导地位,纷纷推出了各自的网络架构体系和标准,如IBM公司的SNA,Novell IPX/SPX协议,Apple公司的AppleTalk协议,DEC公司的DECnet,以及广泛流行的TCP/IP协议。

同时,各大厂商针对自己的协议生产出了不同的硬件和软件。

各个厂商的共同努力促进了网络技术的快速发展和网络设备种类的迅速增长。

但由于多种协议的并存,也使网络变得越来越复杂;而且,厂商之间的网络设备大部分不能兼容,很难进行通信。

5.为了解决网络之间的兼容性问题,帮助各个厂商生产出可兼容的网络设备,国际标准化组织ISO于1984年提出了OSI RM(Open System Interconnection Reference Model,开放系统互连参考模型)。

OSI 参考模型很快成为计算机网络通信的基础模型。

在设计OSI 参考模型时,遵循了以下原则:各个层之间有清晰的边界,实现特定的功能;层次的划分有利于国际标准协议的制定;层的数目应该足够多,以避免各个层功能重复。

6.OSI参考模型具有以下优点:简化了相关的网络操作;提供即插即用的兼容性和不同厂商之间的标准接口;使各个厂商能够设计出互操作的网络设备,促进标准化工作;防止一个区域网络的变化影响另一个区域的网络,结构上进行分隔,因此每一个区域的网络都能单独快速升级;把复杂的网络问题分解为小的简单问题,易于学习和操作。

7.OSI参考模型分为七层,由下至上依次为第一层物理层(Physical layer)、第二层数据链路层(Data link layer)、第三层网络层(Network layer)、第四层传输层(Transport layer)、第五层会话层(Session layer)、第六层表示层(Presentation layer)、第七层应用层(Application layer)。

TCPIP协议一网络基础知识

TCPIP协议一网络基础知识

TCPIP协议一网络基础知识TCP/IP协议:网络基础知识TCP/IP(Transmission Control Protocol/Internet Protocol)是一组用于互联网通信的协议集合。

它是互联网的基础,为数据在网络中的传输提供了标准化的方法和规则。

本文将介绍TCP/IP协议的基本概念、结构和工作原理,以及在网络通信中的重要作用。

一、TCP/IP协议的概述TCP/IP协议指的是一组用于将数据从源地址传输到目标地址的规则和约定。

它包括两个核心协议:TCP和IP。

TCP(Transmission Control Protocol)是一种面向连接的协议,确保数据的可靠传输;而IP (Internet Protocol)是一种无连接的协议,负责数据包的分组和路由。

TCP/IP协议可分为四个层次:应用层、传输层、网络层和物理链路层。

应用层提供了应用程序之间的通信服务,如HTTP、FTP和SMTP 等;传输层通过端口号标识不同的应用程序,为应用程序提供端到端的数据传输服务,如TCP和UDP协议;网络层负责数据包的路由和转发,如IP协议;物理链路层处理传输媒介上的比特流,如以太网和Wi-Fi等。

二、TCP/IP协议的工作原理TCP/IP协议工作的基本原理是将数据分割成小块,然后通过互联网传输到目的地址并重新组装。

整个过程可以分为以下几个步骤:1. 应用程序通过套接字(socket)与传输层建立连接,发送数据请求。

2. 传输层将数据分割成适当大小的数据块,并为每个数据块添加序号和检验和。

3. 网络层根据目标地址将数据包发送到下一个节点,选择最佳的路径和传输方式。

4. 物理链路层将数据包转化为比特流,并通过物理媒介传输到目标地址。

5. 目标地址的物理链路层接收到比特流,并将其转化为数据包。

6. 目标地址的网络层根据协议进行检验和分析,将数据包传递给传输层。

7. 目标地址的传输层根据序号和检验和对数据包进行验证和重组,并将数据传递给应用程序。

TCPIP协议知识科普

TCPIP协议知识科普

TCPIP协议知识科普简介本⽂主要介绍了⼯作中常⽤的TCP/IP对应协议栈相关基础知识,科普⽂。

本博客所有⽂章:TCP/IP⽹络协议栈TCP/IP⽹络协议栈分为四层, 从下⾄上依次是:1. 链路层其实在链路层下⾯还有物理层, 指的是电信号的传输⽅式, ⽐如常见的双绞线⽹线, 光纤, 以及早期的同轴电缆等, 物理层的设计决定了电信号传输的带宽, 速率, 传输距离, 抗⼲扰性等等。

在链路层本⾝, 主要负责将数据跟物理层交互, 常见⼯作包括⽹卡设备的驱动, 帧同步(检测什么信号算是⼀个新帧), 冲突检测(如果有冲突就⾃动重发), 数据差错校验等⼯作。

链路层常见的有以太⽹, 令牌环⽹的标准。

2. ⽹络层⽹络层的IP协议是构成Internet的基础。

该层次负责将数据发送到对应的⽬标地址, ⽹络中有⼤量的路由器来负责做这个事情, 路由器往往会拆掉链路层和⽹络层对应的数据头部并重新封装。

IP层不负责数据传输的可靠性, 传输的过程中数据可能会丢失, 需要由上层协议来保证这个事情。

3. 传输层⽹络层负责的是点到点的协议, 即只到某台主机, 传输层要负责端到端的协议, 即要到达某个进程。

典型的协议有TCP/UDP两种协议, 其中TCP协议是⼀种⾯向连接的, 稳定可靠的协议, 会负责做数据的检测, 分拆和重新按照顺序组装,⾃动重发等。

⽽UDP就只负责将数据送到对应进程, ⼏乎没有任何逻辑, 也就是说需要应⽤层⾃⼰来保证数据传输的可靠性。

4. 应⽤层即我们常见的HTTP, FTP协议等。

这四层协议对应的数据包封装如下图:四层协议对应的通信过程如下图:链路层以太⽹数据帧以太⽹数据帧格式如下:说明如下:1. ⽬的地址和源地址是指⽹卡的硬件地址(即MAC地址), 长度是48位, 出⼚的时候固化的。

2. 类型字段即上层协议类型, ⽬前有三种值: IP, ARP, RARP。

3. 数据对应了上层协议传输的数据, 以太⽹规定数据⼤⼩是46~1500字节, 最⼤值1500即以太⽹的最⼤传输单元(MTU), 不同⽹络类型有不同MTU, 如果需要跨不同类型链路传输的话, 就需要对数据进⾏重新分⽚。

TCPIP网络知识介绍

TCPIP网络知识介绍
标准创建委员会
国际标准化组织(ISO)---国际标准化组织是一个多 国团体,其主要成员主要来源于世界上许多政府的标 准创建委员会。
国际电联电信标准部(ITU-T)---20世纪70年代中期, 一些国家确定了电信的国际标准,但那时在国际范围 的兼容性还较差,于是联合国就在国际电联(ITU)下 面成立了一个国际电报电话咨询委员会(CCITT).这个 委员会致力于研究和建立电信的通用标准,特别关注 电话和数据通信系统。在1993年3月,CCITT改名为 国际电联电信标准部(ITU-T)。
电子工业协会(EIA)---和ANSI一样,电子工业协会是 一个在生产方面推进电子学应用的非赢利组织。它的活动 除了开发标准外,还包括对公众的教育培训和促进政府对 标准的制定。在信息技术领域定义物理连接的接口和数据 通信的电子信令的规约方面,EIA都做出了显著的贡献。
论坛
帧中继论坛---帧中继论坛是由数字设备公司、北方电信、 思科以及StartaCom公司发起建立的,其目的是推进帧 中继的应用和是实现。该论坛研究的问题包括流控制、封 装、转换和多播。论坛的结果文件将提交--美国国家标准化局是一个 民间的非赢利组织,不隶属于美国联邦政府。
电气和电子工程师学会(IEEE)---电气和电子工程师学 会(IEEE)是世界上最大的专业的工程师学会。它的范围 是国际性的,目标是在电气工程、电子学、无线电以及工 程的相关分支领域发展理论、创造性和提高产品质量。作 为其中的一个目标,IEEE监督对计算机通信和标准的开发 和采纳。
因特网研究部(IRTF)是一个工作组的论坛,其注意力放 在有关因特网协议、应用、体系结构和技术的长期研究题 目上。
因特网名称和号码分配公司(ICANN)(以前称为IANA) 负责管理因特网的域名和地址。

TCPIP协议(二)tcpip基础知识

TCPIP协议(二)tcpip基础知识

TCPIP协议(⼆)tcpip基础知识今天凌晨时候看书,突然想到⼀个问题:怎样做到持续学习?然后得出这样⼀个结论:放弃不必要的社交,控制欲望,克服懒惰。

然后⼜有了新的问题:学习效率时⾼时低,状态不好怎么解决?这也是我最近在思考的问题。

⼀、TCP/IP的标准化1、TCP/IP的含义⼀般来说,TCP/IP是利⽤IP进⾏通信时所必须⽤到的协议群的统称。

具体点,IP或ICMP、TCP或UDP、TELENT或FTP、以及HTTP等都属于TCP/IP协议,⽽TCP/IP⼀词泛指这些协议,有时称它们为TCP/IP为⽹际协议族/TCP/IP协议族如下图所⽰:2、标准化的精髓特性:开放性、注重实⽤性(被标准化的协议能否被实际运⽤)TCP/IP协议由IETF(国际互联⽹⼯程任务组)讨论制定;即将协议的⼤致规范定下来,然后进⾏通信试验,及时修订3、规范——RFCRFC:request for comment,即征求意见表;那些需要标准化的协议,会被计⼊RFC并在互联⽹上公布;RFC不仅包含协议规范内容,还包括协议实现和运⽤的相关信息,以及实验⽅⾯的信息RFC通过编号组织每个协议的标准化请求;其编码是既定的,⼀旦成为某个RFC的内容,就不能再对其进⾏修改;若要修改已有某个协议内容,则需要重新发⾏⼀个新的RFC⽂档,同时,⽼的RFC⽂档作废新的RFC⽂档会明确规定是扩展了哪个已有RFC以及要作废哪个已有RFC基于每次修改RFC时都会产⽣新的RFC编号太⿇烦,为此,采⽤了STD(standard)⽅式管理编号,其作⽤是:⽤来记录哪个编号制定哪个协议4、TCP/IP的标准化流程TCP/IP的标准化流程⼤概分为以下⼏个阶段:①.互联⽹草案阶段:从提出开始不断进⾏讨论实验,有了⼀定成熟度,觉得实际可⾏,认为其可以进⾏标准化,可进⼊下⼀阶段②.提议标准阶段:计⼊RFC,开始进⼊众多设备⼚商⽣产环节,投⼊试验使⽤,⼀般为6个⽉,当所有参与协议的⼈觉得其“实⽤性强,不存在太多问题”,则进⼊下⼀阶段③.草案标准阶段:⼀般为期4个⽉,在经过不断的使⽤和讨论改进后,被⼤众所使⽤接受,那么这个草案标准就进⼊下⼀个阶段④.标准阶段:到这个阶段,意味着该标准已⼴泛被使⽤且具有很强的实⽤性5、RFC获取⽅法①.⽹址:/rfc/ftp:///in-notes/这两个⽹址保存着所有的RFC⽂件,⽹站中有⼀个名为rfc-index.txt的⽂件,包含所有RFC概览;RFC⽹站除了发布RFC相关信息,还提供RFC检索功能②.STD或FYI以及ID获取地址关于STD、FYI、ID也可以从以下⽹站获取,其概览⼀分别记录在std-index.txt、fyi-index.txt等⽂件中STD获取地址:/in-notes/std/FYI获取地址:/in-notes/fyi/ID获取地址:/Internet-drafts/JPNIC的ftp服务器中的⽬录:STD获取⽹址:ftp://ftp.nic.ad.jp/rfc/std/FYI获取⽹址:ftp://ftp.nic.ad.jp/rfc/fyi/ID获取⽹址:ftp://ftp.nic.ad.jp/internet-drafts/⼆、互联⽹基础知识1、互联⽹定义互联⽹,英⽂单词为Internet;Internet指的是将多个⽹络连接使其构成⼀个更⼤的⽹络,所以Internet本意为⽹际⽹“互联⽹”是指由ARPANET发展⽽来、互联全世界的计算机⽹络;互联全世界的计算机⽹络,现在“互联⽹”对应的英⽂单词为“The Internet”与Internet对应的另⼀种⽹络叫做intranet,该⽹络指使⽤Internet技术将企业内部组织机构连接起来形成⼀个企业范围的内部⽹络,提供⾯向企业内部的通信服务2、互联⽹与TCP/IP关系互联⽹进⾏通信时,需要相应的⽹络协议,TCP/IP是为使⽤互联⽹⽽开发定制的协议族;因此,互联⽹的协议就是TCP/IP3、互联⽹的结构⼩范围内的⽹络连接形成机构内部⽹络,机构内部⽹络连接形成区域⽹络,各个区域相互连接,则形成连接全是的互联⽹;互联⽹是⼀个有层次的⽹络互联⽹中每个⽹络都是由⾻⼲⽹(BackBone)和末端⽹(Stub)组成;每个⽹络之间通过NOC相连;如果运营商不同,则⽹络连接⽅式和使⽤⽅法也不同。

TCP、IP 网络协议知识点总结大全

TCP、IP 网络协议知识点总结大全

TCP、IP网络协议知识点总结大全1.TCP/IP模型2.TCP和UDP3.TCP为什么要三次握手4.TCP为什么要四次挥手5.网页请求一个URL的流程6.DNS工作原理7.HTTPS加密原理1.TCP/IP模型「应用层」:规定应用程序数据格式,处理特定的应用程序细节「传输层」:指定端口供特定应用程序处理,建立端口到端口的通信「网络层」:主要负责寻址和路由选择,将数据传输到目标地址,建立主机到主机的通信「链路层」:数据链路层分为逻辑链路LLC子层和介质访问控制MAC子层:o MAC(Media Access Control层主要定义了数据包如何在物理介质上传输,包括数据帧的封装/卸装,帧的寻址和识别,帧的接收与发送,链路的管理,帧的差错控制等,MAC层的存在屏蔽了不同物理链路的差异性o LLC(Logic Link Control)层负责识别网络层协议,为上层提供服务,包括传输可靠性保障和控制、传输可靠性保障和控制、数据包的顺序传输在发送数据的时候,MAC层可以事先判断是否可以发送数据,如果可以则给数据加上一些控制信息,最终将数据以规定格式发送到物理层;在接收数据的时候,MAC层首先判断是否发生传输错误,如果没有错误,则去掉控制信息后发送至LLC层「物理层」:通过光纤、电缆等设备将计算机连接起来,实现二进制数据的传输2.TCP和UDPo TCP头结构:来源端口、目的端口、序号、确认序号、SYN/ACK 等状态位、窗口大小、校验和、紧急指针o特点:面向连接、面向字节流、可靠、有序、速度慢、较重量,流量控制、拥塞控制o适用场景:文件传输、浏览器等o应用:HTTP、HTTPS、RTMP、FTP、SMTP、POP3o UDP头结构:来源端口、目的端口、长度域、校验和o特点:无连接、面向报文、不可靠、无序、速度快、轻量、实时性高(无队首阻塞)o适用场景:适用于一对多、即时通讯、视频通话等o应用:DHCP、DNS、QUCI、VXLAN、GTP-U、TFTP、SNMP3.TCP为什么要三次握手TCP的可靠连接建立是靠包起始序列号来达成的,三次握手主要目的是客户端和服务端对各自的包起始序列号达成共识:o第「一」次握手:客户端发送SYN及客户端包起始序列号给服务端o第「二」次握手:服务端发送SYN及服务端包起始序列号给客户端,并且还发送ACK及客户端包起始序列号+1,表示对客户端包起始序列号达成共识o第「三」次握手:客户端发送ACK及服务端包起始序列号+1给服务端,表示对服务端包起始序列号达成共识而二次无法达成共识目的,四次则报文数量冗余了包序列号可以认为是唯一的,因为它是以时间自增生成的,每四个多小时才会重复一次,远大于报文最大生成时间MSL4.TCP为什么要四次挥手TCP是全双工的,断开需要确保双向都没有数据要发送了:o第「一」次挥手:客户端发送FIN及客户端包序列号给服务端,表示客户端没有数据要发送了o第「二」次挥手:服务端发送ACK及客户端包序列号+1给客户端,表示对客户端没有数据发送达成了共识o第「三」次挥手:服务端发送FIN及服务端包序列号给客户端,表示服务端没有数据要发送了o第「四」次挥手:客户端发送ACK及服务端包序列号+1给服务端,表示对五福端没有数据发送达成了共识第四次挥手客户端发送ACK给服务端后会进入TIME_WAIT状态,要等待2MSL才真正关闭,两个理由:o要确保客户端发送的ACK能达到服务端,让服务端知道客户端收到了第三次挥手,服务端进而可以断开了o要保证本连接中所有的报文都在网络中死翘翘了,防止下个同端口的新连接收到旧连接的报文5.网页请求一个URL的流程1.HTTP请求的准备o发起DNS请求将域名解析成对应的IP地址o建立TCP连接,如果开启了Keep-Alive机制,也可在多次请求中复用TCP连接2.HTTP请求的构建按照HTTP报文格式构建报文,包括:o请求行:包括请求方法、URL、HTTP版本信息,请求方法包括POST、GET、PUT、DELETE等o首部:包括Accept-Charset(客户端可以接受的字符集)、Content-Type(正文内容格式)、Cache-control(缓存控制)等o正文实体:当使用POST、PUT等请求方法时,通常客户端需要向服务器传递数据,这些数据就存储在请求正文中3.HTTP请求的发送添加HTTP头后,报文会经过传输层、网络层、链路层,分别添加上TCP头、IP头和MAC头然后判断目标地址和本机是否在同个局域网,如果是,就通过ARP 协议获取目标MAC地址,放入MAC头;如果不在同个局域网,就把网关MAC地址放入MAC头网关收到包后取出目标IP地址,根据路由协议找到下一跳路由器,获取下一跳路由器MAC地址,将包发送过去,这样路由器一跳一跳最终到达目标局域网最后一跳路由器发现目标地址在自己局域网中,通过ARP协议获取目标地址的MAC地址,然后将包发送给目标机器目标机器接收到包后,层层向上,依次解析MAC头、IP头、TCP头,最后发送给TCP头中端口号对应的HTTP服务器进程,然后HTTP服务器将网页返回给客户端4.HTTP返回的构建HTTP返回报文包括:o状态行:包括版本、状态码、短语信息,状态码包括200(OK)、404(Not Found)、503(Service Unavailable)等等o首部:包括Retry-After(间隔一定时间后可重试)、Content-Type(正文内容格式)等o正文实体:返回的数据格式,包括HTML、JSON等6.DNS工作原理DNS服务器包括根域名、顶级域名、权威域名三种:o根域名DNS服务器:返回顶级域DNS服务器的IP地址o顶级域名DNS服务器:返回权威DNS服务器的IP地址o权威域名DNS服务器:返回相应主机的IP地址客户端先在本地缓存中查找是否有域名对应的IP地址,如果有直接返回,没有则向本地DNS服务器发起请求本地DNS服务器检查是否有缓存,没有则向根域名服务器、顶级域名服务器、权威域名服务器依次发起请求,最终得到域名对应的IP地址7.HTTPS加密原理HTTPS通过非对称加密生成密钥,然后用这个密钥去对称加密传输的数据,通过对称加密和非对称加密结合的方式,既保证传输安全,也保证传输效率非对称加密的私钥不会在互联网上传输,可以保证私钥的私密性,但公钥是公开的,可能被冒充,所以需要通过证书和权威机构来验证公钥的合法性服务器需向CA(Certificate Authority)权威认证机构申请数字证书,CA用自己的私钥对服务器个人信息与服务器公钥生成数字签名后,再和服务器个人信息与服务器公钥一起形成数字证书客户端发起请求时,服务器会将数字证书发送给客户端,客户端用CA公钥解密数字签名生成服务器信息摘要,再和证书中的服务器信息摘要进行对比,以此验证数字证书是否是CA颁发的合法证书但CA的公钥也可能被冒充,为了验证CA公钥的合法性,CA也要有CA自身的数字证书,由更可信、更权威的CA机构签名生成,由此形成多层级的认证机构,客户端设备默认内置了一部分权威机构的根证书。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

OSI模型包含许多被分割成层的组件。

在网络数据通信的过程中,每一层完成一个特定的任务。

当传输数据的时候,每一层接收到上面层格式化后的数据,对数据进行操作,然后把它传给下面的层。

当接收数据的时候,每一层接收到下面层传过来的数据,对数据进行解包,然后把它传给上一层。

虚电路结构增强了OSI模型每一层的模块性;实现每一层的软件可以被栈的开发人员和工作站的管理人员移走、替代和更新而是影响它上面和下面的层。

这允许灵活地改变网络类型和更新层来处理错误和增加新特性。

每一层都利用其上层和下层的服务来维持它和远地主机上对应层的虚电路。

第二课 TCP/IP协议一.Internet的现状1. TCP/IP的发展过程及组织ISOC(Internet Society)应用软件 IABIETF IANA IRTF2.说明TCP/IP的重要性连接不同系统的技术开放系统,可通过Request for comments开发自己的TCP/IP解法与Internet连接:节省资金提供强有力的WAN连接:可路由,为广域网设计的二.TCP/IP协议族1.TCP/IP协议族英文全称:Transmission Control Protocol/Internet Protocol中文全称:传输控制协议/互联网协议TCP/IP实际上是一族协议,不是单一的协议,详见【附图一】◇ARP(Address Resolution Protocol):地址解析协议◇RARP(Reverse Address Resolution Protocol):逆向地址解析协议如果一台IP机器不带磁盘,启动时无法知道其IP地址。

但它知道它的MAC地址。

RARP协议是丢失灵魂者的精神病分析家。

它发出一个分组,其中包括其MAC地址,要求回答这一MAC地址的IP地址。

一个称为RARP服务器的特定机器作出响应并回答。

至此,这一身份危机就获得解决。

像一位优秀的分析家一样RARP使用已知信息,即机器的MAC地址,求得其IP地址完成机器ID的确定。

◇ICMP(Internet Control Message Protocol):Internet控制信息协议◇IGMP(Internet Group Management Protocol):Internet组管理协议◇UDP(User Datagram Protocol):用户数据报协议◇SNMP(Simple Network Management Protocol):简单网络管理协议◇SMTP(Simple Mail Transmission Protocol):简单邮件传送协议◇FTP(File Transmission Protocol):文件传输协议◇Telnet:Telnet是协议中的变色龙,它的特殊性在于终端仿真。

它允许远程客户机(称为Telnet Client)上的用户访问另外机器(称为Telnet Server)的资源。

Telnet完成这一任务的方法是下拉(pulling)一台较快的Telnet服务器,将客户机修饰成一台终端,直接附加到本地网络。

这个设计实际上是软件映像,可以与某远程主机互相交往的虚拟终端。

这些仿真的终端工作在文件方式。

可以执行显示菜单这样的步骤,这可使用户有机会选择菜单,在一个下拉的服务器上访问应用程序。

用户运行Telnet客户机软件开始Telnet会话,然后登录到Telnet服务器。

Telnet的能力限于运行应用程序或窥视一下服务器上的内容。

它仅仅是一个“观察“的协议。

它不能用于文件共享,如下载资料。

要想真正搞到资料必须运用FTP协议。

◇NDIS(Network Device Interface Specification):网络驱动接口规范◇NFS(Network File System) :网络文件系统这是一个重要的协议,以文件共享为特点。

它允许两个不同类型的文件系统互相操作。

假定NFS服务器软件正运行在NetWare服务器,并且NFS客户机软件正运行在UNIX主机上。

NFS允许NetWare服务器上的部分RAM透明地存储UNIX文件,UNIX用户可以使用这些文件。

虽然NetWare文件系统与UNIX文件系统不同(在识别大写与小写方面、文件名的长度、安全性等方面),但UNIX用户用NetWare用户都可用它们正常的文件系统和正常的方法访问同一文件。

Telnet、FTP和TFTP都有局限性。

请读者记住,作程序使用,FTP不能执行远程文件,而NFS则可以。

它可在计算机上打开图形应用程序,修改读者昨晚在同一程序上所做的修改。

NFS有输入和输出材料的能力,即远程操作应用程序。

◇BootP(Boot Program):引导程序当一台无磁盘的工作站加电后,它向网络广播一个BootP请求。

一个BootP服务器听到请求后,从客户机的BootP文件中查找其MAC地址。

如果找到相应的项目,它就作出响应,告诉该机的IP地址及其应该使用的引导文件,这通常是通过TFTP协议来完成。

没有磁盘的机器用BootP可获得:◇网络接口层:在模型的最底层是网络接口层。

本层负责将帧放入线路或从线路中取下帧。

◇ Internet层:Internet协议将数据包封装成Internet数据包并运行必要的路由算法。

◇传输层:传输协议在计算机之间提供通信会话。

数据投递要求的方法决定了传输协议。

◇应用层:在模型的顶部是应用层。

本层是应用程序进入网络的通道。

在应用层有许多TCP/IP工具和服务,如:FTP、Telnet、SNMP、DNS等等。

该层为网络应用程序提供了两个接口:Windows Sockets和NetBIOS。

3.TCP与UDP区别4.TCP的三次握手(Three-Way Handshake)在TCP协议中,建立连接要通过“三次握手”机制来完成。

这种“三次握手”机制既可以由一方TCP发起同步握手过程而另一方TCP响应该同步过程,也可以由通信双方同时发起连接的同步握手。

① TCP A向TCP B发送1个同步TCP段请求建立连接例:该TCP段简要表示成〈SEQ=100〉〈CTL=SYN〉,其中“〈〉”中的内容为TCP段中的字段② TCP B将确认TCP A的请求,并同时向TCP A发出同步请求例:该TCP段为〈SEQ=300〉〈 ACK=101〉〈CTL=SYN,ACK〉③ TCP A将确认TCP B的请求,即向TCP B发送确认TCP段例:该TCP段为〈SEQ=101〉〈 ACK=301〉〈CTL= ACK〉④ TCP A在已建立的连接上开始传输TCP数据段例:该TCP段为〈SEQ=101〉〈 ACK=301〉〈CTL= ACK〉〈DATA〉整个过程可用图表示:TCP A TCP B〈SEQ=100〉〈CTL=SYN〉一次〈SEQ=300〉〈 ACK=101〉〈CTL=SYN,ACK〉二次〈SEQ=101〉〈 ACK=301〉〈CTL= ACK〉三次〈SEQ=101〉〈 ACK=301〉〈CTL= ACK〉〈DATA〉(或三次)由于TCP连接是一个全双工的数据通道,一个连接的关闭必须由通信双方共同完成。

当通信的一方没有数据需要发送给对方时,可以使用FIN段向对方发送关闭连接请求。

这时,它虽然不再发送数据,但并不排斥在这个连接上继续接收数据。

只有当通信的对方也递交了关闭连的请求后,这个TCP连接才会完全关闭。

在关闭连接时,既可以由一方发起而另一方响应,也可以双方同时发起。

无论怎样,收到关闭连接请求的一方必须使用ACK段给予确认。

实际上,TCP连接的关闭过程也是一个三次握手的过程。

TCP A TCP B〈SEQ=100〉〈 ACK=300〉〈CTL=FIN,SYN〉〈SEQ=300〉〈 ACK=101〉〈CTL= ACK〉〈SEQ=300〉〈 ACK=101〉〈CTL= FIN,ACK〉〈SEQ=101〉〈 ACK=301〉〈CTL= ACK〉//这部分TCP关闭连接应该是四次握手,而不是三次。

TCP连接的关闭过程作者:fbysssmsn:jameslastchina@blog:/fbysss声明:本文由fbysss原创,转载请注明出处关键字:TCP协议关闭连接前言:TCP协议的连接是全双工连接,一个TCP连接存在双向的读写通道。

简单说来是“先关读,后关写”,一共需要四个阶段。

以客户机发起关闭连接为例:1.服务器读通道关闭2.客户机写通道关闭3.客户机读通道关闭4.服务器写通道关闭关闭行为是在发起方数据发送完毕之后,给对方发出一个FIN(finish)数据段。

直到接收到对方发送的FIN,且对方收到了接收确认ACK之后,双方的数据通信完全结束,过程中每次接收都需要返回确认数据段ACK。

详细过程:第一阶段客户机发送完数据之后,向服务器发送一个FIN数据段,序列号为i;1.服务器收到FIN(i)后,返回确认段ACK,序列号为i+1,关闭服务器读通道;2.客户机收到ACK(i+1)后,关闭客户机写通道;(此时,客户机仍能通过读通道读取服务器的数据,服务器仍能通过写通道写数据)第二阶段服务器发送完数据之后,向客户机发送一个FIN数据段,序列号为j;3.客户机收到FIN(j)后,返回确认段ACK,序列号为j+1,关闭客户机读通道;4.服务器收到ACK(j+1)后,关闭服务器写通道。

这是标准的TCP关闭两个阶段,服务器和客户机都可以发起关闭,完全对称。

FIN标识是通过发送最后一块数据时设置的,标准的例子中,服务器还在发送数据,所以要等到发送完的时候,设置FIN(此时可称为TCP连接处于半关闭状态,因为数据仍可从被动关闭一方向主动关闭方传送)。

如果在服务器收到FIN(i)时,已经没有数据需要发送,可以在返回ACK(i+1)的时候就设置FIN(j)标识,这样就相当于可以合并第二步和第三步。

5.滑动窗口(Sliding Windows)滑动窗口:是两台主机间传送数据时的缓冲区。

每台TCP/IP主机支持两个滑动窗口:一个用于接收数据,另一个用于发送数据。

窗口尺寸表示计算机可能缓冲的数据量大小。

滑动窗口工作原理:当TCP从应用层中接收数据时,数据们于Send窗口。

TCP将一个带序列号的报头加入数据包并将其交给IP,由IP将它发送到目标主机。

当每一个数据包传送时,源主机设置重发计时器(描述在重新发送数据包之前将等待ACK的时间)。

在Send窗口中有每一个数据包的备份,直到收到ACK。

当数据包到达服务器Receive窗口,它们按照序列号放置。

当接收到连续的段时就向源主机发送一个关于数据的认可(ACK),其中带有当前窗口尺寸。

一旦源主机接收到认可,Send窗口将由已获得认可的数据滑动到等待发送的数据。

如果有重发计时器设定的时间内,源主机没有接收到对现存数据的认可,数据将重新传送。

相关文档
最新文档