首页 > 代码库 > Socket编程(1)
Socket编程(1)
socket定义
在Linux中的网络编程是通过socket接口来进行的。人们常说的socket是一种特殊的I/O接口,他也是一个文件描述符。socket是一种常用的进程之间通信机制,通过它不仅能实现本地机器上的进程之间的通信,而且通过网络能够在不同机器上的进程之间进行通信。
每一个socket都用一个半相关描述{协议,本地地址,端口号}来表示;一个完整的套接字则用一个相关描述{协议、本地地址、本地端口、远程地址、远程端口}来表示。socket也有一个类似于打开文件的函数调用,该函数返回一个整型的socket描述符,随后的连接建立、数据传输等操作都是通过socket实现的。
socket类型
(1)流式socket
流式socket(SOCK_STREAM)。
流式套接字提供可靠的、面向连接的通信流,它使用TCP协议,从而保证了数据传输的正确性和顺序性
(2)数据报socket(SOCK_DGRAM)
数据报套接字定义了一种无连接的服务,数据通过相互独立的报文进行传输,是无序的,并且不保证是可靠、无差错的。它使用数据报协议(UDP)
(3)原始socket
原始套接字允许底层协议如IP或ICMP进行直接访问,它功能强大但使用较为不方便,主要用于一些协议的开发。
Socket编程(1)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。