社区
网络编程
帖子详情
以知SOCKET描述符s,用什么函数可以得到它的协议类型
atm008
2006-03-11 10:14:22
以知SOCKET描述符s,用什么函数可以知道它的协议类型,TCP/UDP
...全文
71
2
打赏
收藏
以知SOCKET描述符s,用什么函数可以得到它的协议类型
以知SOCKET描述符s,用什么函数可以知道它的协议类型,TCP/UDP
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
striking
2006-03-12
打赏
举报
回复
int optval,optlen = sizeof(int);
getsockopt(s,SOL_SOCKET,SO_TYPE,(char *)&optval,&optlen);
optval == 1 //tcp
nuaawenlin
2006-03-12
打赏
举报
回复
来晚了
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指明所使用的
协议
族,通常为AF_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
在测量软件中的使用也很广泛
建立一个soket
函数
建立一个
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
客户端通过调用Connect
函数
在
socket
数据结构中保存本地和远端信息。无连接
socket
的客户端和服务端以及 面向连接
socket
的服务端通过调用bind
函数
来配置本地信息。 Bind
函数
原型为: int bind(int sockfd,struct sockaddr *my_addr, int addrlen); 连接建立 面向连接的客户程序使用Connect
函数
来配置
socket
并与远端服务器建立 一个TCP 连接,其
函数
原型为: int connect(int sockfd, struct sockaddr *serv_addr,int addrlen); Sockfd 是
socket
函数
返回的
socket
描述符
;serv_addr 是包含远端主机IP 地 址和端口号的指针;addrlen 是 远端地质结构的长度。Connect
函数
在出现错误 时返回-1,并且设置errno 为相应的错误码。进行客户端程 序设计无须调用 bind(),因为这种情况下只需知道目的机器的IP 地址,而客户通过哪个端口与 服务器建立 连接并不需要关心,
socket
执行体为你的程序自动选择一个未被占 用的端口,并通知你的程序数据什么时 候到打断口。 Connect
函数
启动和远端主机的直接连接。只有面向连接的客户程序使用
socket
时才需要将此
socket
与 远端主机相连。无连接
协议
从不建立直接连接。面向连接的服务器也从不启动一 个连接,它只是被动的在
协议
端口监听客户的请求。
win
Socket
编程源码
基于
SOCKET
的局域网通信是一种灵活的、易于实现的、低成本的方法。
Socket
可以运行在各种使用TCP/IP
协议
作为通讯
协议
的网络上,它是TCP/IP网络的API,
Socket
接口定义了许多
函数
或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。网络的
Socket
数据传输是一种特殊的I/O,
Socket
也是一种文件
描述符
。
Socket
也具有一个类似于打开文件的
函数
调用
Socket
(),该
函数
返 回一个整型的
Socket
描述符
,随后的连接建立、数据传输等操作都是通过该
Socket
实现的。
Socket
描述符
解释
Socket
描述符
因为套接字API最初是作为UNIX操作系统的一部分而开发的,所以套接字API与系统的其他I/O设备集成在一起。特别是,当应用程序要为因特网通信而创建一个套接字(
socket
)时,操作系统就返回一个小整数作为
描述符
(descriptor)来标识这个套接字。然后,应用程序以该
描述符
作为传递参数,通过调用
函数
来完成某种操作(例如通过网络传送数据或接收输入的数据)。
socket
描述符
(经典)
2011-03-08 20:30 dlytgaowen 的 套接字
描述符
引子........ 大多数的操作系统里,需要I/O请求的应用程序请求操作系统打开一个文件。系统就创建一个文件
描述符
提供给应用程序访问文件。从应用程序的角度看,文件
描述符
是一个整数,应用程序可以用它来读写文件。下图显示,操作系统如何把文件
描述符
实现为一个指针数组,这些指针指向内部数据结构。
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章