Socket编程

++目的++ 开发采用套接字通信的C/S网络应用程序。

socket1.套接字是一个主机本地应用程序所创建的,为操作系统所控制的接口("门") .

**2.应用进程通过这个接口,使用传输层提供的服务,跨网络发送(/接收)报文到(/**从)其他应用进程。

Socket API
n 1981 提出于 BSD4.1 UNIX,
n 网络应用程序明确的创建 , 使用及释放套接字
n client/server 模式
n 通过 Socket API, 提供传输层的 2 类传输服务 :
¨ 不可靠的数据报传输
¨ 可靠的字节流传输
1. TCP进行套接字编程
n ++Socket:++ 应用进程和传输层协议 (UCP or TCP) 之间的门。
n ++TCP++ ++服务++ ++:++ 1 个进程到另 1个进程的字节流的可靠传输。
Socket 是从 UNIX 的 I/O 命令集发展而来的。Socket为上层实体提供一种透明的访问网络的能力,本质上说是传输层的服务原语。 TCP 中的套接字系统调用

客户必须初始联系服务器
n 服务器进程必须先运行
n 服务器进程必须创建套接字 ( ) 来迎候客户的初始联系

客户如何初始联系服务器
n 创建客户本地 TCP socket
n 指定服务器进程的 IP 地址 , 端口号
n 一旦客户创建套接字 , 客户 TCP 就发起 3 次握手并建立与服务器 TCP 的连接
n
n 一旦客户初始联系 ( 敲门 ) 服务器 , 服务器 TCP 为服务器进程创建 1 个新的 socket 与客户进程通信
¨ 允许服务器与多个客户通信
¨ 源端口号被用来区分客户

从应用程序的角度来看

TCP为客户和服务器提供了

可靠的***,顺序的,***字节流的

传输***("管道")***

相关推荐
搬码临时工1 小时前
自己本地搭建的服务器怎么接公网?公网IP直连服务器方法,和只有内网IP直接映射到互联网
服务器·网络·tcp/ip
Shun_Tianyou5 小时前
Python Day25 进程与网络编程
开发语言·网络·数据结构·python·算法
楠目6 小时前
Shell脚本实现自动封禁恶意扫描IP
服务器·网络·tcp/ip
阿 柒9 小时前
网络基础——网络层级
运维·服务器·网络
无聊的HZ11 小时前
HTTP 请求返回状态码和具体含义?200、400、403、404、502、503、504等
网络·网络协议·http
BUG再也不见11 小时前
Python爬虫 urllib 模块详细教程:零基础小白的入门指南
开发语言·网络·爬虫·python
北极光SD-WAN组网12 小时前
用NAS如何远程访问:详细教程与实用技巧
网络
FreeBuf_14 小时前
微软披露Exchange Server漏洞:攻击者可静默获取混合部署环境云访问权限
网络·安全·microsoft
奶油话梅糖14 小时前
【网络自动化】利用Python脚本与计划任务,实现H3C/HPE设备配置无人值守备份
网络·python·自动化
wanhengidc16 小时前
云手机的主要功能都包含哪些?
网络·安全·智能手机