【C++】Socket网络编程

本文将介绍①Socket是什么②Socket与TCP/IP的关系③Socket编程中具体接口的用法 Bind() Connect() Accept() etc..④Socket编程示例(VS2015) 下载示例1. Socket(套接字)是什么Socket(套接字)是指通讯设备的连接端点,不用于网口、USB端口这样的端点是实质的,套接字是虚拟的,包含了通讯所需的信息的端口。套接字有很多种,本文主要...
摘要由CSDN通过智能技术生成

本文将介绍

①Socket是什么
②Socket与TCP/IP的关系
③Socket编程中具体接口的用法 Bind() Connect() Accept() etc..
④Socket编程示例(VS2015)下载示例

1. Socket(套接字)是什么

Socket(套接字)是指通讯设备的连接端点,不用于网口、USB端口这样的端点是实质的,套接字是虚拟的,包含了通讯所需的信息的端口。套接字有很多种,本文主要介绍Internet套接字。Internet套接字包含网络通讯必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远程主机的IP地址,远程主机进程的协议端口。
Internet套接字有以下几种:
SOCK_STREAM:流式套接字,提供面向连接的稳定数据流传输,即TCP协议。
SOCK_DGRAM:数据报套接字,使用不连续不可靠的数据包连接,即UDP协议。
SOCK_SEQPACKET:有序分组套接字,提供连续可靠的数据包连接。
SOCK_RAW:原始套接字,允许对底层协议直接访问,如IP/ICMP协议等。
SOCK_RDM:提供可靠的数据包连接。
SOCK_PACKET:与网络驱动程序直接通信。

2. Socket与TCP/IP关系

关于TCP/IP
相信很多人都听过Socket(套接字)和TCP/IP,两者总是一起出现,好似是同一个东西,但我们都知道它们是不一样的,那究竟两者有什么关系
Socket包含了连接使用的协议,这个协议指的就是TCP/IP协议族。TCP/IP协议族不只是TCP和IP,它可以详细分为四层,每层上有不同的协议,对应ISO-OSI七层网络模型。

OSI七层网络模型

TCP/IP四层概念模型  

对应网络协议

应用层(Application

应用层

HTTPTFTP, FTP, NFS, WAISSMTP

表示层(Presentation

Telnet, Rlogin, SNMP, Gopher

会话层(Session

SMTP, DNS

传输层(Transport

传输层

TCP, UDP

网络层(Network

网络层

IP, ICMP, ARP, RARP, AKP, UUCP

数据链路层(Data Link

数据链路层

FDDI, Ethernet, Arpanet, PDN, SLIP, PPP

物理层(Physical

IEEE 802.1A, IEEE 802.2IEEE 802.11

TCP/IP内容非常庞大,此处不展开讲解,后面文章会详细讲解TCP/IP协议族。此处下载《TCP/IP协议详解 - 第五版》  点击打开链接

TCP/IP协议族之间的抽象关系可用下图表示

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值