2013-07-22 00:08
⁄ 工业·编程
⁄ 共 2092字
TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于假死状态,连接本身占用的资源不 会被释放。网络服务器程序要同时管理大量连接,所以很有必要保证无用连接完全断开,否则大量僵死的连接会浪费许多服务器资源。在众多TCP状态中,最值得 注意的状态有两个:CLOSE_WAIT和TIME_WAIT。
1、LISTENING状态 FTP服务启动后首先处于侦听(LISTENING)状态。...
TCP, 网络编程阅读全文
2012-12-07 07:30
⁄ 工业·编程
⁄ 共 3958字
TCP编程的服务器端一般步骤是
1、 创建一个socket,用函数socket();
2、 设置socket属性,用函数setsockopt(); * 可选
3、 绑定IP地址、端口等信息到socket上,用函数bind();
4、 开启监听,用函数listen();
5、 接收客户端上来的连接,用函数accept();
6、 收发数据,用函数send()和recv(),者read()和write();
7、 关闭网络连接;
8、 关闭监听;
TCP编程的客户端一般步骤是:
1、 创建一个socket,用函数socket();
2、 ...
TCP, 软件开发阅读全文
2012-12-04 22:38
⁄ 工业·编程
⁄ 共 2835字
TCP/IP协议同ISO/OSI模型一样,也可以安排成栈形式。但这个栈不同于ISO/OSI版本,比ISO/OSI栈少,所以又称之为短栈。另外,需要知道的是:TCP/IP协议栈只是许多支持ISO/OSI分层模型协议栈的一种,是一个具体的协议栈。
对于TCP/IP协议栈划分为几层更合适,多年来专家们一直未达成共识,大部分对TCP/IP协议栈的描述都假定它占据了协议结构的4到5个功能层。下面我们对这两种主流的分层方法分别进行描述。
1 基于4层的TCP/IP协议栈...
TCP, 协议, 网络编程阅读全文
2012-12-01 21:29
⁄ 工业·编程
⁄ 共 1330字
首先解释一段截取的网络数据认识一下。(由a_la_lei解释)
1、-> syn(这一步是初始化发送端的ISN。理论上,它的数据字段没有任何值,消耗的是一个虚字节) TCP: Sequence number = 4071231308 TCP: Acknowledgement number = 0 2、<- ack syn(初始化接收端的ISN,并对收到的包进行确认。因为确认的方式是累计确认,所以尽管第1步传输了一个虚字节,但ACK仍旧是4071231308+1=4071231309) TCP: Sequence number...
TCP阅读全文
2012-11-13 21:54
⁄ 工业·编程
⁄ 共 2483字
TCP协议提供的是可靠的、面向连接的传输控制协议,即在传输数据前要先建立逻辑连接,然后再传输数据,最后释放连接3个过程。 尽管TCP和UDP都使用相同的网络层(IP),TCP却向应用层提供与UDP完全不同的服务。 TCP提供一种面向连接的、可靠的字节流服务。 面向连接意味着两个使用TCP的应用(通常是一个客户和一个服务器)在彼此交换数据之前必须先建立一个TCP连接。这一过程与打电话很相似,先拨...
TCP, 协议阅读全文
2012-08-22 23:37
⁄ 工业·编程
⁄ 共 2418字
本文旨在分析使用抓包工具抓取到的数据包。
(一)抓包工具
tcpdump:linux下的抓包利器
wireshark:带GUI的抓包工具,其前身是大名鼎鼎的Ethereal
(二)抓包
这里只简述tcpdump的一般用法,详细资料可参考tcpdump使用手册。
wireshark带有GUI,操作比较简单,暂不赘述。
tcpdump -i eth1 tcp -Xnlps0 port 16815 src host 192.168.0.0 and dst net 192.168.0.1 tcpdump -i eth1 -Xnlps0 dst net 172.23.9.155 and port 37861 ...
TCP, tcpdump, 数据分析阅读全文
2012-08-13 05:50
⁄ 工业·编程
⁄ 共 7876字
本文是我在进行MS-Windows、HP-Unix网络编程的实践过程中总结出来的一些经验,仅供大家参考。本文所谈到的Socket函数如果没有特别说明,都是指的Windows Socket API。 一、WSAStartup函数 int WSAStartup( WORD wVersionRequested, LPWSADATA lpWSAData ); 使用Socket的程序在使用Socket之前必须调用WSAStartup函数。该函数的第一个参数指明程序请求使用的Socket版本,其中高位字节指明副...
TCP, 网络阅读全文
2012-08-06 22:33
⁄ 工业·编程
⁄ 共 2267字
1 .计算机网络的体系结构
计算机网络是一个非常复杂的系统,将整个网络的传输功能进行分层设计的网络结构层次模型及各层协议的集合称为计算机网络的体系结构。为了解决异构互联及通信问题, 20 世纪 70 年代后期国际标准化组织( ISO )制定了 OSI ( Open System Interconnect )开放式系统互联参考模型。该模型采用了三级抽象,即体系结构、服务定义和协议规格说明,是一种标准化的理论参考模型。
开放式互联网( Internet ...
TCP阅读全文
2012-08-06 22:30
⁄ 工业·编程
⁄ 共 8983字
B/S 通信简述
整个计算机网络的实现体现为协议的实现, TCP/IP 协议是 Internet 的核心协议, HTTP 协议是比 TCP 更高层次的应用层协议。
HTTP ( HyperText Transfer Protocol ,超文本传输协议)是互联网上应用最为广泛的一种网络协议。所有的 WWW 文件都必须遵守这个标准。设计 HTTP 的初衷是为了提供一种发布和接收 HTML 页面的方法。
浏览器( Web Browser )负责与服务器建立连接,下载网页(包括资源文件及 JS 脚本文件...
TCP阅读全文
2010-05-26 11:24
⁄ 工业·编程
⁄ 共 8174字
12 广播和多播
12.1 引言
在第1章中我们提到有三种IP地址:单播地址、广播地址和多播地址。本章将更详细地介绍广播和多播。
广播和多播仅应用于UDP,它们对需将报文同时传往多个接收者的应用来说十分重要。TCP是一个面向连接的协议,它意味着分别运行于两主机(由IP地址确定)内的两进程(由端口号确定)间存在一条连接。
考虑包含多个主机的共享信道网络如以太网。每个以太网帧包含源主机和目的主机的以太网地址(48 bit)。通...
TCP阅读全文