Windows Socket 网络编程(一)

[入库:2005年8月19日] [更新:2007年3月24日]

本文简介:选择自 wuyanhuiyishi 的 blog

来源:http://www.vckbase.com/document/viewdoc/?id=472

windows socket 网络编程(一)
—— tcp/ip体系结构、特点及相关术语
作者: 冰点工作室 小鹰

一、tcp/ip 体系结构与特点

1、tcp/ip体系结构

tcp/ip协议实际上就是在物理网上的一组完整的网络协议。其中tcp是提供传输层服务,而ip则是提供网络层服务。tcp/ip包括以下协议:(结构如图1.1)

(图1.1)

ip: 网间协议(internet protocol) 负责主机间数据的路由和网络上数据的存储。同时为icmp,tcp,udp提供分组发送服务。用户进程通常不需要涉及这一层。
arp: 地址解析协议(address resolution protocol)
此协议将网络地址映射到硬件地址。
rarp: 反向地址解析协议(reverse address resolution protocol)
此协议将硬件地址映射到网络地址
icmp: 网间报文控制协议(internet control message protocol)
此协议处理信关和主机的差错和传送控制。
tcp: 传送控制协议(transmission control protocol)
这是一种提供给用户进程的可靠的全双工字节流面向连接的协议。它要为用户进程提供虚电路服务,并为数据可靠传输建立检查。(注:大多数网络用户程序使用tcp)
udp: 用户数据报协议(user datagram protocol)
这是提供给用户进程的无连接协议,用于传送数据而不执行正确性检查。
ftp: 文件传输协议(file transfer protocol)
允许用户以文件操作的方式(文件的增、删、改、查、传送等)与另一主机相互通信。
smtp: 简单邮件传送协议(simple mail transfer protocol)
smtp协议为系统之间传送电子邮件。
telnet:终端协议(telnet terminal procotol)
允许用户以虚终端方式访问远程主机
http: 超文本传输协议(hypertext transfer procotol)
tftp: 简单文件传输协议(trivial file transfer protocol)

2、tcp/ip特点
tcp/ip协议的核心部分是传输层协议(tcp、udp),网络层协议(ip)和物理接口层,这三层通常是在操作系统内核中实现。因此用户一般不涉及。编程时,编程界面有两种形式:一、是由内核心直接提供的系统调用;二、使用以库函数方式提供的各种函数。前者为核内实现,后者为核外实现。用户服务要通过核外的应用程序才能实现,所以要使用套接字(socket)来实现。
图1.2是tcp/ip协议核心与应用程序关系图。

(图1.2)

二、专用术语
1、套接字
它是网络的基本构件。它是可以被命名和寻址的通信端点,使用中的每一个套接字都有其类型和一个与之相连听进程。套接字存在通信区域(通信区域又称地址簇)中。套接字只与同一区域中的套接字交换数据(跨区域时,需要执行某和转换进程才能实现)。windows 中的套接字只支持一个域——网际域。套接字具有类型。
windows socket 1.1 版本支持两种套接字:流套接字(sock_stream)和数据报套接字(sock_dgram)

2、windows sockets 实现
一个windows sockets 实现是指实现了windows sockets规范所描述的全部功能的一套软件。一般通过dll文件来实现

3、阻塞处理例程
阻塞处理例程(blocking hook,阻塞钩子)是windows sockets实现为了支持阻塞套接字函数调用而提供的一种机制。

4、多址广播(multicast,多点传送或组播)
是一种一对多的传输方式,传输发起者通过一次传输就将信息传送到一组接收者,与单点传送
(unicast)和广播(broadcast)相对应。

本文关键:Windows Socket 网络编程(一)
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top