易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux系统环境下的Socket编程详细解析

 
什么是Socket
 
Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。
 
Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix
系统的输入和输出的话,就很容易了解Socket了。网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具
有一个类似于打开文件的函数调用Socket(),该函数返回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现
的。常用的Socket类型有两种:流式Socket(SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。流式是一种面向连接的
Socket,针对于面向连接的TCP服务应用;数据报式Socket是一种无连接的Socket,对应于无连接的UDP服务应用。
 
Socket建立
 
为了建立Socket,程序可以调用Socket函数,该函数返回一个类似于文件描述符的句柄。socket函数原型为:
 
int socket(int domain, int type, int protocol);
 
domain指明所使用的协议族,通常为PF_INET,表示互联网协议族
(TCP/IP协议族);type参数指定socket的类型:SOCK_STREAM
或SOCK_DGRAM,Socket接口还定义了原始Socket(SOCK_RAW),允许程序使用低层协议;protocol通常赋值"0"。
Socket()调用返回一个整型socket描述符,你可以在后面的调用使用它。
 
Socket描述符是一个指向内部数据结构的指针,它指向描述符表入口。调用Socket函数时,socket执行体将建立一个Socket,实际上"建立一个Socket"意味着为一个Socket数据结构分配存储空间。
 
Socket执行体为你管理描述符表。
 
两个网络程序之间的一个网络连接包括五种信息:通信协议、本地协议地址、本地主机端口、远端主机地址和远端协议端口。Socket数据结构中包含这五种信息。
 
Socket配置
 
通过socket调用返回一个socket描述符后,在使用socket进行网络传
输以前,必须配置该socket。面向连接的socket客户端通过调用Connect函数在socket数据结构中保存本地和远端信息。无连接
socket的客户端和服务端以及面向连接socket的服务端通过调用bind函数来配置本地信息。
Bind函数将socket与本机上的一个端口相关联,随后你就可以在该端口监听服务请求。Bind函数原型为:
 
int bind(int soc


相关文档:

linux下MySQL安装及设置

1. 关于本文
本文将以MySQL 5.0.51为例,以CentOS 5为平台,讲述MySQL数据库的安装和设置。
2. 关于MySQL
MySQL是最流行的开源SQL数据库管理系统,它由MySQL AB开发、发布和支持。MySQL AB是一家由MySQL开发人员创建的商业公司,它是一家使用了一种成功的商业模式来结合开源价值和方法论的第二代开源公司。MySQL是MySQL ......

linux的filesystem repaier

 
挂载了一个new硬盘,结果没有啥用处,可能当时在fstab里也增加了开机挂载的选择。没有注意,有一天就把后加的hard格式化掉了。不小
心reboot的时候连不上了。到机房一看,出现错误:fsck 没有发现/dev/sdb1 不能执行下去。然后让我进入一个文件修复过程:
An error occurred during the file system check ...&nb ......

Linux内核移植和根文件系统制作

 第一章 移植内核
1.1 Linux内核基础知识
在动手进行Linux内核移植之前,非常有必要对Linux内核进行一定的了解,下面从Linux内核的版本和分类说起。
1.1.1  Linux版本
Linux内核的版本号可以从源代码的顶层目录下的Makefile中看到,比如2.6.29.1内核的Makefile中:
VERSION = 2
PATCHLEVEL = 6
......

linux svn仓库分离 提示权限不正确(403 fobidden)

这两天因为工作上的需要,将一个比较大的仓库分离,本以为比较简单的事,弄了N久,特别是最后权限不正确,查了关天,竟然是因为编码问题,真是哇血啊。总结一下遇到的问题,以免下次犯同样的错误。
1.wpsdoc仓库的分离
分离过程中,由于以前的入库的格式等不正确,直接分离失败,最后是将所有文件导出然后再导入的。麻烦 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号