python socket编程基础知识
2017-02-27 01:13
597 查看
网络编程基础总结
IP地址分类使用:
A类:二进制0开头(1-127)B类:二进制10开头(128-191)
C类:二进制110开头(192-223)
D类:二进制1110开头(224-239)
E类:二进制11110开头(240-255)
特殊地址:
一、数据包不会出现在Internet上:10.0.0.0-10.255.255.255
172.16.0.0-172.31.255.255
192.168.0.0-192.168.255.255
二、环回地址:
127.0.0.1/localhost
端口
端口是协议端口号的简称,其端口号范围为0-65535熟知端口号:0-1023;常用的服务器使用
登记端口号(到机构登记其使用)1024-49151
客户端使用的短暂端口号(49152-65535)
注意:编程时指定地址时,最少应指定IP地址和端口号,其格式为:IP地址:80
TCP/UDP协议
UDP协议(传输控制协议)无连接,减少网络开销和时延
尽最大努力交付,上层应对数据作验证处理
无拥塞控制,用在保证速率的数据传送中(IP电话、网络视频)
面向连接的通讯协议(通信前应先建立连接,实质为虚连接)
应用举例:TFTP、DNS、SNMP、VoIP、QQ
TCP协议(用户数据报协议)
面向连接的通讯协议(通信前应先建立连接,实质为虚连接)
提供可靠的交付服务
实现了全双工通信
面向字节流(传输的任何数据被视为二进制代码流)
一个连接只能有两个传输端点
应用举例:HTTP、FTP、TELNET、POP、SMTP
TCP/UDP协议不同点:
TCP应先建立连接,再通信,最后应释放连接;UDP不用管理连接。
TCP保证数据可靠交付,用起来更省心;UDP不保证可靠交付,用户应自行处理可靠性。
TCP连接开销大;UDP则开销小。
TCP适用实时性低,但数据可靠性高的场合;UDP适用实时性高,但数据可靠性低的场合。
TCP/UDP协议相同点:
位于TCP/IP协议的第四层。
为应用层提供服务。
都要通过网际层来具体实现数据传输
用socket实现TCP客户端
基本步骤:创建套接字,连接服务器
收发数据
关闭套接字
TCP通信模型:
用socket实现UDP客户端
基本步骤:创建套接字
收发数据
关闭套接字
UDP通信模型:
用socket实现服务器端
C/S模式简介:
C/S模式就是client/Server模式,中文为客户/服务器模式client即客户端,是指主动向服务器发出服务请求的一方。
Server即服务器,是指响应客户请求并提供客户所需要的网络服务的一方。
服务器一般在系统启动时自动调用运行,并等待客户机的请求。
与其相对的是B/S模式,即浏览器/服务器模式。
客户端使用统一的浏览器,而不用专门的部署。
服务器端与浏览器间使用应用层的HTTP协议进行通信。
套接字网络编程基础
用socket建立TCP服务器端:创建套接字并绑定地址
开始监听连接
接收连接并收发数据
关闭套接字
TCP通信模型:
用socket建立UDP服务器端:
1. 创建套接字并绑定地址
2. 开始监听连接
3. 收发数据
4. 关闭套接字
UDP通信模型:
相关文章推荐
- VS2010 C# 你得学会并且学得会的Socket编程基础知识(Silverlight Socket编程)
- 你得学会并且学得会的Socket编程基础知识 (转)
- Python基础编程(一)基础知识
- 最基础的Python的socket编程入门教程
- Python网络编程基础笔记-poll实现非阻塞socket
- java基础知识回顾之java Socket学习(二)--TCP协议编程
- 你得学会并且学得会的Socket编程基础知识
- VS2010 C# 你得学会并且学得会的Socket编程基础知识(Silverlight Socket编程)
- socket编程之基础知识
- socket网络编程的一些基础知识
- 你得学会并且学得会的Socket编程基础知识(续)——Silverlight客户端
- 你得学会并且学得会的Socket编程基础知识
- 你得学会并且学得会的Socket编程基础知识
- java基础知识回顾之java Socket学习(一)--UDP协议编程
- Python:pygame游戏编程之旅七(pygame基础知识讲解1)
- Socket编程基础知识
- Socket编程基础知识
- Python:pygame游戏编程之旅七(pygame基础知识讲解1)
- 你得学会并且学得会的Socket编程基础知识
- Socket编程基础知识