tcp/ip primer plus 第八章传输控制协议(tcp)

原创 2007年10月01日 20:54:00

8.2tcp头 

8.2.3序号

tcp采取了顺序化机制已了解数据中的每一个字节。在一个tcp连接上发送的数据的每一个字节有一个序号。使用某个算法计算初始序号,此序号包含在会话建立时的同步帧中并且包含在四字节的序号字段。序号标识了每一个发送的数据报中的第一个字节。

注意;tcp并不是对数据中每一个字节排序,而是通过对每个字节作顺序化来保证每一个字节的传输。它只是在每个发送的分组中确认(ACK)特定的序号。tcp也采用窗口机制控制数据报的发送。

8.4.2确认号

四字节的确认号字段包含了主机期望从对方接受的下一个序号值。ACK号等于对方前一次发送的序号加上长度的值。窗口大小决定了一个发送主机可以传输的最大字节数,为了计算确认,将初始好加入到帧数与以字节为单位的长度的乘积中。

8.2.5数据偏移量

4位的数据偏移量字段指出了TCP头厚的高层数据从哪里开始,由于当有某些可选项时,TCP头的大小可以变化,因此数据偏移量是必要的。

8.2.7控制标记——6位

6位的控制标记字段向接受者指出了此帧的用途。tcp伪头提供对IP头的错误控制并且可以检测误导帧。他保证正确的目的主机接受发送数据报。tcp并包括包含在伪头中的信息。

8.2.11tcp选项——可变长度

根据发送主机对选项的选择,tcp选项字段的长度是可变化的。例如:发送主机可以选择标识此tcp主机将要接受的最大报文段长度,如果没有此选项,主机将接受任何长度的报文段。最大报文段长度(MSS)选项是最常用的选项。长度字段标识了tcp头及其后数据的长度。但是不包括tcp伪头信息。尽管tcp将tcp长度字段作为其头的一部分。但是tcp长度字段并不会在sniffer详细输出的tcp头中。

tcp伪头提供了对IP头的错误控制并且可以检测误导帧。它保证正确的目的主机接受发送数据报。tcp并不包括包含在伪头中的信息。tcp将此信息存储于称为TCB(传输控制块)的tcp内存缓存中。

8.3TCP操作的基础

tcp通过以下措施来控制这些进程间的通信: 连接的建立和撤销。多路复用,数据传输,流量控制,可靠性,优先权和安全。与无连接的协议不同,TCP并不依赖于底层跟踪数据。tcp并不把自己限制与标识发送和接收主机进程,将数据放在网络线上,并且期望它不重复的到达目的。tcp采用顺序化和确认机制来保证分组的传输。

与uDP不同。tcp收到一个数据流(报文)时,它将报文分段,并且在用IP报文传输前给数据报zhogde每一个字节分配一个序号,这些序号需要从目的返回相应的确认以保证接受者已经收到了从发送者发来的每一段。。 tcp保持包含在主机缓存,即TCB(传输控制块)中的这些短的一个拷贝。

8.3.1连接建立和撤销

在建立连接之前,tcp首先在远程主机间建立一个称为逻辑电路的连接,这些连接链接运行于每一个主机的端口和进程。tcp在整个会话期间都保持次连接并且当它在不需要此连接时撤销它。一旦IP了解目的主机的逻辑地址,tcp就建立为高层协议提供可靠数据传输的一个会话。

8.3.2多路复用

为了实现这一点,tcp采用端口来区分和管理通信。

8.3.3数据传输

tcp接收从高程进程或者应用来的数据流并把它们组织成段,然后将它们向下传输并由IP(网络层)格式化为数据报用于编址封装和传输。当IP收到从一个远端主机来的数据报市,它就检查IP头中的协议地址并判断它是通过tcp还是UDP传输出去。当tcp收到从IP来的数据报中的段时,它将这些重新组织成有组织的数据流(报文),标识接受客户,或者服务器的端口,并将它们传给相应的(高层)应用处理。

8.3.4流量控制

在tcp头中表示的窗口机制提供此功能。每一个终端主机维护自己的窗口并且将此窗口向另一方广播。当有拥塞时,主机减少窗口的大小并将此向另一方广播。

当没有拥塞时主机可以增加窗口大小,以通知另一方可以发送更多的数据。按照需要动态的调整欻港口成为滑动窗口。

注意即使一个主机存在0窗口情形。该主机仍然可以传输数据,但是只能接收关键的帧,如ACK和携带RST或者URG位的帧。

8.3.5可靠性

可靠性来自tcp的有保证的分组传输。

8.4面向连接的特点

8.4.1会话建立

tcp客户通过对tcp头中的syn置位而开始一个会话,此为表示向目的tcp进程请求同步。,接受主机的tcp会话进程必须对收到SYN请求作确认,并且发送它自己的syn请求,此syn请求同样也被以前的主机确认。这就是三次握手,由于tcp具有全双工的通信功能,所以它只需要三帧而不是四帧来完成此过程。当目的收到发sogzhede第一个syn请求之,通过在同一个帧中携带自己的syn请求进行确认而对目的作出响应。

与会话建立的顺序一样,撤销过程也需要三帧交换。

8.4.3顺序化和确认

因为数据报在到达它们的目的前有可能采用不同的路径,因此某些段可能会有很大的延迟,接受主机按需确认接收到的数据,例如:某一发送主机发送了序号1.2.3.4,但是目的只收到了1.2.4,则接收者就通过发送ACK=3只对1和2作确认。

8.4.4保留

解释没有交换任何数据时,每一个面向连接的协议也需要某种方式维护通信进程间的逻辑电路。为了维护逻辑电路,tcp发送一个不包含任何高层协议数据的“保留”数据报,tcp采用此数据报来维护会话的活跃。

 

C++ Primer Plus第六版 第八章 编程练习答案

23333 时隔一年我来填坑了 CPP继续往后读然后把题目写了_(:з」∠)_ 写到哪更到哪 不一次性更完了...
  • zhaoshu01234
  • zhaoshu01234
  • 2015年08月06日 00:01
  • 2097

c++primer plus 第八章习题答案(自己写的)

#include #include //第八章 using namespace std; void showstr(char *str, int n = 0); int main() { char ...
  • chinahnwqf
  • chinahnwqf
  • 2016年05月11日 23:25
  • 672

关于缓冲区,如果c primer plus 第八章看不懂就先看这个!!!!!

c语言输入输出缓冲区的概念(一)(说的非常好,转载自网上) 你肯定会奇怪为什么一开始先说这个,一开始不都是数据类型什么的嘛,这个写在最前面因为后面的程序即使最简单的code都会用到输入输出,输出比较...
  • whieet
  • whieet
  • 2012年09月01日 09:30
  • 1926

C Primer Plus(第6版)第八章答案

1.#include int main (void) { int ch;//字符 int i = 0;//字符数 while ((ch = getchar ()) != ...
  • sirius_black_tea
  • sirius_black_tea
  • 2017年07月21日 15:00
  • 388

C++ Primer Plus 第六版(中文版)课后编程题----第八章

8.1 一开始并不太理解题目中“打印该字符串的字数为该函数被调用的次数”,于是参考了一篇博文:http://blog.csdn.net/qq844352155/article/details/233...
  • Lmerissa
  • Lmerissa
  • 2016年01月13日 11:08
  • 773

TCP传输控制协议总结

TCP位于TCP/IP四层协议的第三层,属于传输层协议。它提供面向连接的 可靠的字节流服务。  TCP通过一下方式提供服务:    1. 应用数据被分割成TCP认为最合适发送的数据块。这和UDP完全不...
  • sunshinewave
  • sunshinewave
  • 2016年03月22日 00:51
  • 1107

传输控制协议TCP的特点和格式

TCP协议的主要特点:①支持面向连接的传输服务。:应用程序在使用TCP协议传送数据之前,必须在源进程端口和目的进程端口之间建立一条TCP传输连接。每个TCP连接为通信双方的一次进程通信提供服务。 ②...
  • baidu_33604078
  • baidu_33604078
  • 2017年09月29日 22:26
  • 148

传输控制协议TCP概述

传输控制协议TCP概述 tcp/IP
  • u013272948
  • u013272948
  • 2016年11月22日 16:27
  • 202

记录——《C Primer Plus (第五版)》第八章编程练习第五题

修改程序清单8.4的猜测程序,使其使用更智能的猜测策略。例如,程序最初猜50,让其询问用户该猜测值是大、小还是正式。如果该猜测值小,则令其下一次猜测值为50和100的中值,也就是75,。如果75大,则...
  • zgscsed
  • zgscsed
  • 2015年09月27日 21:35
  • 446

TCP/IP协议和工业以太网传输控制方法 及通信模式比较1

TCP/IP协议 Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基...
  • mozun1
  • mozun1
  • 2014年04月16日 10:44
  • 2183
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:tcp/ip primer plus 第八章传输控制协议(tcp)
举报原因:
原因补充:

(最多只允许输入30个字)