系统学习TCP/IP协议(一)------有用的策略和模式

系统学习TCP/IP协议(一)------有用的策略和模式

协议实际上就是一种解决某些问题的策略和模式,在经典的TCP/IP协议中就有很多策略和模式值得学习。归纳起来有以下一些(随着学习深入逐步添加):

分层

封装和分用

可靠连接

分层

分层是TCP/IP乃至网络通信最核心的策略和模式,分层使得所有的网络应用程序不用关心底层链路传输的细节,也使得不同类型的网络有效地互通。这是一种典型的化繁为简,把复杂的事情分解到不同层面的策略,层与层之间是服务与被服务的关系,每层只需关注所在维度的事情。例如,通过网络层IP协议的抽象和处理,把不同类型的网络互连起来,并且这些底层传输的差异对于上层(运输层和应用层)是透明的,这给上层应用程序的开发带来了极大的方便,示意图如下所示:

系统学习TCP/IP协议(一)------有用的策略和模式

封装和分用

为了实现和支持上面说的分层策略,TCP/IP在数据包设计上采用封装和分用的策略,所谓封装就是在应用程序在发送数据的过程中,每一层都增加一些首部信息,这些信息用于和接收端同层次进行沟通,例如当数据从应用程序发送到以太网过程中数据逐层加工的示意图如下所示:

系统学习TCP/IP协议(一)------有用的策略和模式

而在接收端的处理过程就正好相反,也就是所谓的分用策略,数据从底层到最上层的应用程序过程中,数据被逐层拆分,每一层取出自己所需要的信息。如下图所示:

系统学习TCP/IP协议(一)------有用的策略和模式

可靠连接

TCP采用三次握手的方式确保在可能丢包的情况下建立连接,通过连接双方的相互确认,以此达成连接协议。此外,通过非常细化的状态流转来对连接双方进行容错处理。这些设计细节对多系统交互设计有很大的借鉴作用

分类:默认分类 时间:2012-01-04 人气:6
本文关键词:
分享到:

相关文章

  • TCP三次握手(建立连接)/四次挥手(关闭连接) 2012-01-01

    TCP三次握手(建立连接)/四次挥手(关闭连接) 相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需要控制这个过程.但是对于理解TCP底层运作机制,相当有帮助. www.2cto.com 而且对于有网络协议工程师之类笔试,几乎是必考的内容.企业对这个问题热情之高,出乎我的意料:-)。有时上午面试前强调这个问题,并重复讲一次,下午几乎每一个人都被问到这个问题。 因此在这里详细解释一下这两个过程。 TCP三次握手 所谓三次握手(Three-way

  • TCP连接状态详解示意图 2012-01-21

    TCP连接状态详解示意图 tcp状态: LISTEN:侦听来自远方端口的连接请求 SYN-SENT:再次发送连接请求后等待匹配的连接请求 SYN-RECEIVE:再次收到和发送一个连接请求后等待对方连接诶请求的确认 ESTABLISHED:代表一个打开的连接 FIN-WAIT-1:等待远程TCP连接中断请求,或先前的连接中断请求的确认 FIN-WAIT-2:从远程TCP等待连接中断请求 CLOSE-WAIT:等待从本地用户发来的连接中断请求 CLOSEING:等待远程TCP对连接中断的确认 LA

  • 快车的TCP端口/UDP端口是什么 2012-01-25

      快车的TCP端口/UDP端口说明如下:   TCP和UDP服务通常有一个用户/服务器的关系,例如,一个Telnet服务进程开始在系统上处于空闲状态,等待着连接。用户使用Telnet用户程序与服务进程建立一个连接。用户程序向服务进程写入信息,服务进程读出信息并发出响应,用户程序读出响应并向用户报告。因而,这个连接是双工的,可以用来进行读写。   TCP或UDP连接唯一地使用每个信息中的如下四项进行确认:   源IP地址:发送包的IP地址。   目的IP地址:接收包的IP地址。   源端口:源系

  • 大话TCP/IP协议之HTTP网络协议(一) 2012-02-01

    Part1.最熟悉的陌生人 和TCP/UDP协议比起来,HTTP协议或许更为大家所熟知,因为大家处处都可以看到http://xxx.com的字样。但是,真 正了解HTTP协议的同学,或许只是少数,还有很多人甚至不知道"404"的含义。而本文,正是让大家来更深入的了解 下这位最熟悉的陌生人。 Part2.HTTP在江湖中的地位 众所周知,Internet四层网络模型(也称TCP/IP四层模型)包括数据链路层、网络层、传输层和应用层。网络层最著名的协议是IP协议,传输层最著名的协议是TCP协议和UD

  • 传输协议:TCP和UDP的区别 2012-02-10

    传输协议:TCP和UDP的区别 TCP(传输控制协议): 1)提供IP环境下的数据可靠传输(一台计算机发出的字节流会无差错的发往网络上的其他计算机,而且计算机A接收数据包的时候,也会向计算机B回发数据包,这也会产生部分通信量),有效流控,全双工操作(数据在两个方向上能同时传递),多路复用服务,是面向连接,端到端的传输; 2)面向连接:正式通信前必须要与对方建立连接。事先为所发送的数据开辟出连接好的通道,然后再进行数据发送,像打电话。 3)TCP支持的应用协议:Telnet(远程登录)、FTP(文

  • TCP建立与断开连接以及错误处理(包括部分小问题) 2012-02-12

    TCP建立与断开连接以及错误处理(包括部分小问题) 1. TCP建立连接:三次握手,到处都有。需要注意的是ACK确认序列号是SYN携带序列号+1,不是直接相等。基本过程如图所示。 socket程序中调用connect将激发三路握手过程,connect将在成功建立连接或者出错才返回。 (1) 客户端发送SYN以后,6s没有来自服务器的SYN分节响应,则重发SYN,24s后无响应再重发,75s后无响应则返回错误ETIMEOUT。 (2) 对客户端的响应若是RST,则表明服务器端对应端口没有进程等待与

  • 系统学习TCP/IP协议(二)------连接建立与关闭 2012-02-15

    系统学习TCP/IP协议(二)------连接建立与关闭 TCP的可靠传输首先是建立在可靠的连接建立与关闭之上,这一块包含以下要点: TCP三次握手建立连接 TCP半关闭 TCP的状态变迁 TCP服务端监听和处理设计 TCP三次握手建立连接 TCP为了通信双方确认建立起连接,设计了三次握手的策略,三次握手的过程如下: 1) 请求端发送一个SYN段指明客户打算连接的服务器的端口,以及初始序号(ISN)。 2) 服务器发回包含服务器的初始序号的SYN报文段作为应答。同时,将确认序号设置为客户的ISN

  • 系统安全:用TCP/IP 网络连接过滤保护用户计算机 2012-02-17

    除了使用防火墙和杀毒软件,我们还可以使用TCP/IP过滤来保护我们的计算机。TCP/IP过滤可以允许特定的TCP和UDP端口或者IP协议连接到用户的计算机。 要配置一个网络连接的TCP/IP过滤,我们可以遵循下面的步骤: 1.在系统托盘中的网络连接图标上右击,选择“状态”,如图1: 图 1 2.单击“属性”按钮,打开网络连接属性对话框,找到“网络”选项卡,单击Internet协议(TCP/IP): 3.单击属性按钮,打开下面的窗口,如图2: 图 2 4.在上图中,单击“高级…”按钮,打开“高级T

  • TCP/IP协议的几个截图及子网划分方法 2012-02-21

    TCP/IP协议的几个截图及子网划分方法 一.划分子网需要考虑的问题: 1.要划分的子网数量 2.每个子网的主机数量 二.确定子网掩码的步骤: 1.确定子网数量,并将其转换为二进制数,并确定位数n。如:你需要6个子网,6的二进制值为110,共3位,即n=3; 2.按照你ip地址的类型写出其缺省子网掩码。如C类,则缺省子网掩码为11111111.11111111.11111111.00000000; 3.将缺省子网掩码中与主机号的前n位对应的位置置1,其余位置置0。若n=3且为C类地址:则得到子网

Copyright (C) quwantang.com, All Rights Reserved.

趣玩堂 版权所有 京ICP备15002868号

processed in 0.031 (s). 10 q(s)