概述:

  书中采用了8章来介绍TCP,可见其重要性。TCP是一种面向连接的、可靠的字节流服务,也就是说两方要交换数据必须先建立一个连接。

  TCP的信息单位称为segment。TCP对字节流的内容不作任何解释,这项工作交给TCP连接双方的应用层去做。

  TCP为应用层提供全双工服务,即数据能在两个方向上独立地传输。

TCP首部:

  TCP首部通常是20个字节加可选字段。它的前8位必须使源端口号和目的端口号,这是因为ICMP差错至少会返回除了IP首部外的前8个字节,这样方便检查差错对应于哪个连接。MSS为Maximum Segment Size,表示本端所能接收报文段的最大长度。

  TCP首部中有6个标志比特,分别为URG(urgent pointer)、ACK(确认序号有效)、PSH(接收方应尽快将此报文交给应用层)、RST(重建连接)、SYN(同步序号,用来发起连接)、FIN(结束)。

TCP连接的建立与终止:

  TCP连接的建立通过three-way handshake。连接的确认序号ack是上次成功收到的数据字节序号加1。而连接的终止要通过4次握手,因为TCP是全双工的,每个方向必须单独地进行关闭。

  Half-close指连接的一端在结束它的发送后还能接收来自另一端的数据。

  MSL(Maximum Segment Lifetime)指报文段最大生存时间。2MSL等待状态使指在结束连接后2MSL时间内双方的用于此次连接的端口号不可用,因为这样可以让TCP发送最后的ACK以防ACK丢失,一来一回即2MSL。

复位报文段:

  产生复位(RST)的一种常见情况是当连接请求到达时,目的端口没有进程正在听。

  终止一个连接的正常方式是发送一个FIN,这称为有序释放(orderly release),发送复位报文段来释放一个连接则称为异常释放(abortive release)。收到RST的一方不会有任何响应,它只是终止连接并通知应用层连接复位。

  Half-open是指一方已经关闭或异常终止连接而另一方却还不知道。

随想:

  今天突然在想,怎么样才能获得终极的自由呢?我觉得是靠技术。富有的商人受到顾客、市场的约束,有威望的政客受到时局、民意的约束,普通人受到人际关系、信息洪水的约束。尤其在这个网络高度发达的时代,你不知道自己的信息是否被人所窥探。

  古代游侠凭借武艺行走江湖,可以不受贪官酷吏的约束;贵族墓穴通过精妙的机关,避免盗墓者扰其清净;黑客有了厉害的技术,才能在网络世界里任意逍遥。所以真正强大的黑客运用它们的技术,并不主要是为了钱财、名誉等等,而是为了对绝对自由的渴望和追求!

TCP:传输控制协议的更多相关文章

  1. TCP传输控制协议

    TCP 在TCP/IP协议模型中, 传输层协议有TCP和UDP, 这里主要介绍下可靠传输TCP协议, 目前是传输层协议首选. 特点 面向数据流(字节流形式) 虚电路连接 有缓冲传输(提供push机制 ...

  2. 9.TCP:传输控制协议

    1.TCP功能     TCP向应用层提供面向连接的.可靠的字节流服务.TCP可以认为是一个没有选择确认或否认的滑动窗口协议.     TCP将用户数据打包构成报文段:它发送数据后启动一个定时器:另一 ...

  3. TCP 传输控制协议

    开头先说几个协议: IP:网际协议 TCP:传输控制协议 Http:超文本传输协议 AMQP:高级消息队列协议 一:TCP是什么? TCP(Transmission Control Protocol ...

  4. 运输层3——传输控制协议TCP概述

    目录 1. TCP最主要的特点 2. TCP的连接 3. socket在不同场景中的含义 写在前面:本文章是针对<计算机网络第七版>的学习笔记 运输层1--运输层协议概述 运输层2--用户 ...

  5. TCP传输层协议的流程

    http://blog.chinaunix.net/uid-24399976-id-77905.html 通过对互联网的认识,我们发现TCP传输层协议是网络进行工作的核心也是基础.它的重要性我们在此也 ...

  6. TCP/IP 笔记 - 传输控制协议

    与UDP不同,TCP提供面向连接的.可靠的.基于字节流的传输层协议,且提供差错纠正. TCP传输的概念 对与分组丢失和比特差错的处理方法,最直接的方法是重发分组,直到它被正确接收. 这需要一种方法来判 ...

  7. TCP/IP详解学习笔记(12)-- TCP:传输控制协议

    1.概述      TCP提供了一种可靠的面向连接的字节流运输层服务.      TCP将用户数据打包成报文段,它发送后启动一个定时器,另一端收到的数据进行确认,对失序的数据重新排序,丢弃重复数据,T ...

  8. 传输控制协议TCP

    TCP主要特点: (1)面向连接 (2)只能是点到点 (3)可靠的传输协议 (4)全双工通信,各自各自的读写缓冲区,应用层吧数据交给发送缓冲区,tcp合适就发送了,接受的时候tcp写入接受缓冲区,应用 ...

  9. 【TCP/IP详解 卷一:协议】第十七章 TCP:传输控制协议

    本章作为TCP的入门章节,简单的概述了一些TCP的知识,和TCP数据报的首部格式. TCP 最重要的特性:reliable. 17.1 引言 本章介绍的是 TCP为应用层提供的服务. 17.2 TCP ...

  10. TCP/IP详解 读书笔记:TCP:传输控制协议

    TCP的服务 TCP为应用层提供一种面向连接的.可靠的字节流服务. 一个TCP连接中,仅有两方进行彼此通信,所以广播和多播不能用于TCP. TCP通过以下方式提供可靠性: 应用数据被切割为TCP认为最 ...

随机推荐

  1. 提纲挈领webrtc之NS(noise suppression)模块

    Noise suppression,就是大家说的降噪.这种降噪是把人声和非人声区分开来,把非人声当成噪声. 一段包含人声和噪声的音频经过该模块处理,从理论上讲,只剩下人声了. webrtc的NS在业内 ...

  2. Yarn一点小认识

    正文 打开官网http://hadoop.apache.org/docs/r2.6.5/hadoop-yarn/hadoop-yarn-site/YARN.html,将图片拿过来. 我用的是2.6.5 ...

  3. $http设置headers来实现IE不缓存url请求的资源

    var getOrders = function(){    var deferred = $q.defer();    $http({    method:'get',    url:'/getOr ...

  4. Set 和 Map 数据结构

    Set Set 对象允许你存储任何类型的 唯一值, 无论是 原始值(一共6种,string, number, boolean, undefined, null,和 es6 新增的 symbol) 还是 ...

  5. 深入浅出 SpringMVC - 1

    前言: 本篇笔记是LZ在之前学习 SpringMVC 框架时所的记录,分两篇分享,此篇为基础篇,包括 SpringMVC 环境在 Eclipse 中的搭建,SpringMVC 的 HelloWorld ...

  6. layer.msg 添加在Ajax之前 显示进度条。

    一.使用方法:1)必须先引入jQuery1.8或以上版本 <script src="jQuery的路径"></script> <script src= ...

  7. ASP 文件内部访问数据库的通常途径

    创建至数据库的 ADO 连接(ADO connection) 打开数据库连接 创建 ADO 记录集(ADO recordset) 打开记录集(recordset) 从数据集中提取你所需要的数据 关闭数 ...

  8. web端/h5端账号密码的安全性问题

    firefox一直提示让浏览器记住密码会有安全问题,但是一直未曾关注过到底是什么安全问题. 国庆节回家后发生的一件小事,让我深刻认识到让浏览器记住密码有多么不安全. 事情的起因是这样,家里wifi信号 ...

  9. Visual Assist X 10.6.1830.0 常用快捷键

    Visual Assist X 10.6.1830.0 常用快捷键 1.Alt + G: 在定义与声明之间互跳. 2.Alt + O: 在.h与.cpp之间互跳.(O是字母O,不是数字零) 3.Alt ...

  10. QT生成PDF文件

    QString temp=""; //m_File_Content_Text_Edit->selectAll(); QString t_File_Content = m_Fi ...