IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 网 络 编 程 -> 正文阅读

[网络协议]网 络 编 程

  1. 网络通信中最重要的是网络通信协议。最常用的网络协议有3个:Microsoft的NetBEUI、Novell的IPX/SPX和TCP/IP协议。只有TCP/IP允许与Internet完全连接。
  2. IP地址是IP协议提供的一种统一的地址格式,他为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址上的差异。
    IP地址是一个32位的二进制数,通常被分割为4个8位二进制数。IP地址通常用十进制表示成(a.b.c.d)的形式,其中,a、b、c、d都为0~255的十进制整数。
  3. 端口可分为虚拟端口和物理端口,其中虚拟端口是指计算机内部或交换机路由器内的端口,物理端口又称接口。一个IP地址的端口最多可以有65536个。
  4. 子网掩码又称为网络掩码、地址掩码,不能单独存在,必须结合IP一起使用,将某个IP地址划分成网络地址和主机地址两部分。
  5. Socket又称“套接字”,应用程序通常通过“套接字”向网络发出请求或应答网络请求。建立网络通信连接至少有一对端口号(Socket)。Socket本质是编程接口(API),是对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口。套接字之间的连接可以分为3个步骤:服务器监听、客服端请求和连接确认。import socket; from socket import *
  6. UDP编程:UDP是OSI参考模型中一种无线连接的传输层协议,提供面向事物的简单不可靠信息传送服务。使用UDP协议时,不需要建立连接,只要知道对方的IP地址和端口号,就可以直接发送数据包。对于不要求可靠到达的数据,就可以使用UDP协议。
  7. UDP收发信息:使用recvfrom()方法从发送方接收信息然后使用sendto()方法把信息再发送到发送方。
  8. UDP广播:基于UDP协议传输的特点:通过地址发送消息,无须事先建立连接,可以实现广播的功能。可以使用UDP对象的setsockopt()方法实现发送广播消息。、
  9. TCP编程:TCP是一种面向连接的、可靠的、基于节流的传输层通信协议。创建TCP连接时,主动发起连接的称为客服端,被动响应连接的称为服务器。
  10. UDP使用type=SOCK_DGRAM参数,而TCP使用type=SOCK_STREAM参数,不过这是系统的默认值,可以省略。
  11. TCP服务端编程:
    a. 端口绑定,若是属于本地地址,IP地址可以不写,使用TCP对象的bind()方法来实现。
    b. 使用TCP对象的listen()方法进行监听,看是否有信息传送。
    c. 使用TCP对象的accept()方法进行接收,返回客户端的端口号和IP地址。
    d. 使用TCP对象的recv()方法接收数据。
    e. 使用TCP对象的send()方法向客户端发送信息。
  12. TCP三次握手:第一次握手:建立连接时,客服端发送SYN包(SYN seq=x) 到服务器端,并进入SYN_SENT状态,等待服务器端确认;其中SYN表示同步序列编号。第二次握手:服务器端收到SYN包,必须确认客户端的SYN(ACK=x+1),同时自己也发送一个SYN包(seq=y),即SYN+ACK包,此时服务器端进入SYN_RECV状态。第三次握手:客户端收到服务器端的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),次包发送完毕,客户端和服务端进入ESTABLISHED(TCP连接成功)状态,完成三次握手。
  13. TCP四次挥手
    a. TCP客户端发送一个FIN,用来关闭客户端到服务器端的数据传送。
    b. 服务器端收到这个FIN,它发回一个ACK,确认序号为收到的序号加1.与SYN一样,一个FIN将占用一个序号。
    c. 服务器端关闭与客户端的连接,发送一个FIN给客户端。
    d. 客户端发回ACK报文确认,并将确认序号设置为收到序号加1。
  14. TCP10种状态
    a. CLOSED
    b. LISTEN
    c. SYN_SENT
    d. SYN_RCVD
    e. ESTABLISHED
    d. FIN_WAIT_1
    f. FIN_WAIT_2
    g. TIME_WAIT
    h. CLOSE_WAIT
    i. LAST_ACK
  15. TCP长连接和短连接

参考书籍:《Python 3.x基础教程》

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-09-05 11:23:21  更:2021-09-05 11:23:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 9:19:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码