首页 > 代码库 > python基础20 ------python基础之socket编程
python基础20 ------python基础之socket编程
一、C/S架构和B/S架构的简介
略
二、osi七层模型
略
三、socket层
1、如图所示:
socket层是存在于应用层和传输层直接抽象出来的一层。
2、socket层是什么?
Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的 TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。所以,我们无需 深入理解tcp/udp协议,socket已经为我们封装好了,我们只需要遵循socket的规定去编程,写出的程序自然就是遵循tcp/udp标准的。
四、套接字
1、什么是套接字?
源IP地址和目的IP地址以及源端口号和目的端口号的组合称为套接字。其用于标识客户端请求的服务器和服务。
它是网络通信过程中端点的抽象表示,包含进行网络通信必需的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端 口,远地主机的IP地址,远地进程的协议端口。
2、为啥会有套接字?
应用层通过传输层进行数据通信时,TCP和UDP会遇到同时为多个应用程序进程提供并发服务的问题。多个TCP连接或多个应用程序进 程可能需要 通过同一个TCP协议端口传输数据。为了区别不同的应用程序进程和连接,许多计算机操作系统为应用程序与TCP/IP协议交 互提供了称为套接字 (Socket)的接口,区分不同应用程序进程间的网络通信和连接。
3、套接字的工作原理:
python基础20 ------python基础之socket编程