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

Linux下网络编程概述


Linux下网络编程概述
一.网络知识概述
网络程序和普通程序最大的区别是网络程序由两部分组成:客户端和服务器端。
客户端:在网络程序中,如果一个程序主动和外面的程序通信,那么我们就把该程序称为客户端程序。
服务器端:和客户端对应的程序即为服务器端;被动地等待外面程序来和自己通信的程序即为服务器端程序。
TCP:(Transmission Control Protocol 传输控制协议)TCP是一种面向连接的、可靠的、基于字节流的传输层(Transport layer)通信协议,由IETF的RFC 793说明(specified)。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,UDP是同一层内另一个重要的传输协议。 
UDP:(User Datagram Protocol用户数据包协议)UDP是 OSI 参考模型中一种面向无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。它是IETF RFC 768是UDP的正式规范。
二.Socket编程概述
 1. 什么是socket
Socket是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。
Socket接口设计者最先是将接口放在Unix操作系统里面的。网络的 Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具有一个类似于打开文件的函数调用Socket(),该函数返 回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现的。
常用的Socket类型有两种:流式Socket (SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。流式是一种面向连接的Socket,针对于面向连接的TCP服务应用;数据报式Socket是一种无连接的Socket,对应于无连接的UDP服务应用。另外还有一种socket,称为原始socket(SOCK_RAW)。
  2. 建立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可赋值为IPPROTO_UDP、IPPROTO_TCP,但通常赋值为"0",因为type参数


相关文档:

实战Linux Bluetooth编程(三) HCI层编程

1. HCI层协议概述:
HCI提供一套统一的方法来访问Bluetooth底层。如图所示:
从图上可以看出,Host Controller Interface(HCI)  就是用来沟通Host和Module。Host通常就是PC, Module则是以各种物理连接形式(USB,serial,pc-card等)连接到PC上的bluetooth Dongle。
在Host这一端:application,SDP,L2cap等协议 ......

实战Linux Bluetooth编程(六) L2CAP编程实例

例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
 如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......

a shortcut for linux( from linux journal )

if you come from the world of Windows, you undoubtedly understand the concept of a shortcut. In the Linux world, shortcuts do exist, but they're generally referred to as symbolic links, or symlinks. They are so named because, like shortcuts, a symlink is really just a symbolic placeholder or link to ......

在LINUX下使用 Squid 代理服务器


  使用 Squid 代理服务器
  Squid 是一种代理服务器,它实现了对 HTTP、FTP 和 Gopher 协议的缓存。Squid 能够使用访问控制列表(Access Control List,ACL)来允许或拒绝访问。Squid 具备强大的可配置能力以及鲁棒性,而且用户会发现,该软件非常容易学习。更好的是,可将 Squid 配置为透明代理,即好像用户根本不 ......

windows下和linux下PHP支持oracle

windows下:
1.下载用于 Windows 的 Instant Client Basic 程序包:http://download.oracle.com/otn/nt/instantclient/111070/instantclient-basic-win32-11.1.0.7.0.zip
2.解压缩
创建一个子目录(例如,d:\oci),然后从压缩文件中复制以下库:
oraociei10.dll
orannzsbb10.dll
oci.dll
到此目录下
打开PHP.ini ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号