网络协议
文章平均质量分 68
兰亭风雨
在路上
展开
-
【网络协议】HTTP协议笔记
1.HTTP规定在HTTP客户与HTTP服务器之间的每次交互,都由一个ASCII码串构成的请求和一个“类MIME(MIME—like)”的相应组成。HTTP报文通常都是用TCP连接 2.从层次的角度看,HTTP是面向事务的应用层协议。所谓事务,就是指一系列的信息交换,而这一系列的信息交换是一个不可分割的整体,即要么所有信息交换都完成,要么一次交换都不进行。 3.HTTP协议本身原创 2013-12-02 07:59:38 · 10366 阅读 · 15 评论 -
【网络协议】互联网协议入门(一)
我们每天使用互联网,你是否想过,它是如何实现的?全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗?互联网的核心是一系列协议,总称为"互联网协议"(Internet Protocol Suite)。它们对电脑如何连接和组网,做出了详尽的规定。理解了这些协议,就理解了互联网转载 2013-12-15 20:33:59 · 7208 阅读 · 11 评论 -
【网络协议】互联网协议入门(二)
(接上文)七、一个小结先对前面的内容,做一个小结。我们已经知道,网络通信就是交换数据包。电脑A向电脑B发送一个数据包,后者收到了,回复一个数据包,从而实现两台电脑之间的通信。数据包的结构,基本上是下面这样:发送这个包,需要知道两个地址: * 对方的MAC地址 * 对方的IP地址有了这两个地址,数据包才能准确送到接收者手中。转载 2013-12-15 20:37:18 · 5323 阅读 · 4 评论 -
【网络协议】TCP中的四大定时器
前言 对于每个TCP连接,TCP一般要管理4个不同的定时器:重传定时器、坚持定时器、保活定时器、2MSL定时器。 重传定时器 很明显重传定时器是用来计算TCP报文段的超时重传时间的(至于超时重传时间的确定,这里涉及到一大堆的算法,书上有说,我这里不细谈了)。每发送一个报文段就会启动重传定时器,如果在定时器时间到后还没收到对该报文段的确认,就重传该报文段,并将重传定时器复位,重新计算;如果在规定时间内收到了对该报文段的确认,则撤销该报文段的重传定时器。 坚持定时器原创 2014-06-20 08:30:05 · 8111 阅读 · 2 评论 -
【网络协议】TCP的交互数据流和成块数据流
前言 建立在TCP协议上的应用层协议有很多,如FTP、HTTP、Telnet等,这些协议根据传输数据的多少可以分为两类:交互数据类型和成块数据类型。 交互数据类型,如:Telnet,这类协议一般只做小流量的数据交换,比如每按下一个键,要回显一些字符。 成块数据类型,如:FTP,这类协议需要传输的数据比较多,一般传输的数据量比较大。 针对这两种不同的情况,TCP采用不同的策略进行数据传输。 交互数据流 针对交互性要求比较高的应用,比如Rlogin远程登录中,需原创 2014-06-20 08:29:27 · 7175 阅读 · 3 评论 -
【网络协议】TCP的流量控制机制
一般来说,我们总是希望数据传输的更快一些,但如果发送方把数据发送的很快,而接收方来不及接收,这就可能造成数据的丢失。流量控制就是让发送方的发送速率不要太快,让接收方来得及接收。 对于成块数据流,TCP利用滑动窗口机制来实现流量的控制,对于交互数据流,TCP利用捎带ACK和Nagle算法来实现流量的控制。 后两种就不说了,上篇博文中将已经写得比较清楚了,对于滑动窗口机制,上篇博文中也又说到,只是没有刻意提到用滑动窗口来实现流量的控制。下面就详细说下利用滑动窗口机制来实现流量控制的机制,先看下图原创 2014-06-20 08:29:34 · 10736 阅读 · 0 评论 -
【网络协议】TCP连接的建立和释放
TCP报文段首部的前20个字节是固定的,后面有4N字节是根据需要而增加的选项。因此TCP报文段的最小长度为20个字节。 首部固定部分的各字段的意义如下: 1、源端口和目的端口:加上IP首部的源IP地址和目的IP地址,确定唯一的一个TCP连接。另外通过目的端口来决定TCP将数据报交付于那个应用程序,从而实现TCP的分用功能。 2、序号:占4个字节,序号的范围为[0,4284967296]。由于TCP是面向字节流的,在一个TCP连接中传送的字节流中的每一个字节都按顺序编号,首部中的序号字原创 2014-06-09 08:16:50 · 24602 阅读 · 7 评论 -
【网络协议】TCP分段与IP分片
我们在学习TCP/IP协议时都知道,TCP报文段如果很长的话,会在发送时发生分段,在接受时进行重组,同样IP数据报在长度超过一定值时也会发生分片,在接收端再将分片重组。 我们先来看两个与TCP报文段分段和IP数据报分片密切相关的概念。 MYU(最大传输单元) MTU前面已经说过了,是链路层中的网络对数据帧的一个限制,依然以以太网为例,MTU为1500个字节。一个IP数据报在以太网中 传输,如果它的长度大于该MTU值,就要进行分片传输,使得每片数据报的长度小于MTU。分片传输的IP数据原创 2014-06-12 08:20:45 · 31848 阅读 · 12 评论 -
【网络协议】TCP协议简介
本文只是对TCP协议做个简要的介绍。 TCP协议,即传输控制协议,与UDP协议同处于传输层,同样使用相同的网络层,但TCP提供了一种可靠的、面向连接的数据传输服务,它会在两个使用TCP的应用之间建立一个TCP连接,在该连接上进行数据的传输。 TCP通过以下方式提供可靠性: 1、应用程序被分割成TCP认为最合适发送的数据块。这点与UDP完全不同,应用程序产生的UDP数据报长度将保持不变,加上IP首部后,才会进行IP分片。 2、当TCP发出一个报文段后,它会启动一个定时器,等待目原创 2014-06-18 08:29:50 · 5796 阅读 · 1 评论 -
【网络协议】UDP协议
UDP是一个简单的面向数据报的运输层协议:进程的每个输出操作都会产生一个UDP数据报,并组装成一份待发送的IP数据报,这与面向字符流的协议不同,如TCP,应用程序产生的全体数据与真正发送的单个IP数据报可能没有什么联系(主要是在传输层就进行分段了,因此不会受IP分片的影响)。 UDP的首部一共8个字节,很简单,可以参考书上,这里也不再详说。 UDP的校验和 至于UDP的校验和,这里注意下区别就好了,UDP对首部和数据部分都进行校验,而IP首部的校验和仅对IP的首部进行校验,顺带提下T原创 2014-06-13 00:00:19 · 5970 阅读 · 8 评论 -
【网络协议】ICMP协议、Ping、Traceroute
ICMP协议 ICMP经常被认为是IP层的一个组成部分,它是网络层的一个协议,它传递差错报文以及其他需要注意的信息,ICMP报文通常被IP层或更高层(TCP、UDP等)使用,它是在IP数据报内传输的。 ICMP报文大致分为两类:查询报文和差错报文。 先来看差错报文。当传送IP数据报发生错误时(比如主机不可达、网络不可达等),ICMP协议将会发送一个ICMP差错报文给源主机,好让主机做出相应的处理,也因此IP层以上的一些协议有可能做到可靠传输。书中给出了ICMP差错报文中的一些组合(类原创 2014-06-12 08:20:34 · 11182 阅读 · 0 评论 -
【网络协议】IP协议、ARP协议、RARP协议
前20字节和紧接其后的选项部分是IP数据报的首部,前20个字节是固定的,选项可有可无。首部的每一行是一个32位字的单位,最高位在左边,为0bit,最低位在右边,为31bit。4字节的32bit值按照以下次序传输:首先0-7bit,其次8-15比特,然后16-23bit,最后是24-31bit,这种传输次序称为big endian字节序(我们在C语言写位操作的算法时常用到该词)。TCP/IP首部中的所有二进制整数在网络中传输时都要求以这种次序,因此它又称作网络字节序,其他形式存储的二进制数据,如little原创 2014-06-11 00:04:02 · 8535 阅读 · 2 评论 -
【网络协议】数据链路层
数据链路层主要有三个目的:为IP模块发送和接受IP数据报;为ARP模块发送ARP请求和接受ARP应答;为RARP发送RARP请求和RARP应答。 这里的ARP协议主要用来将32bit的IP地址解析为对应48bit(以太网中)的MAC地址(硬件地址)。而RARP协议则是将硬件地址解析为IP地址,这两个协议位于网络层,和IP数据报一样,都具有各自的以太网数据帧类型(即传入到以太网中要加上对应的MAC帧)。局域网中的ARP攻击是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的AR原创 2014-06-11 00:03:57 · 4944 阅读 · 0 评论 -
【网络协议】TCP的拥塞控制机制
前言计算机网络中的带宽、交换节点中的缓存和处理机等,都是网络的资源,在某段时间内,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就要变坏,这种情况就叫做拥塞。所谓拥塞控制,就是防止过多的数据注入到网络中,从而使网络中的路由器或链路不致过载。要注意用拥塞控制与流量控制的区别,拥塞控制是一个全局性的过程,涉及到所有的额主机、路由器,以及与降低网拥塞控制的算法有:慢开始、拥塞避免、快重传、快恢复四种。 慢开始和拥塞避免发送方维持一个拥塞窗口的状态变量,其大小取决于网络的拥塞程度原创 2014-06-21 00:54:02 · 15339 阅读 · 2 评论