作者文章归档:zuojie@88.com

传输层协议


TCP和UDP是两种最为著名的传输层协议,二者都使用IP作为网络层协议。

传输控制协议(TCP,TransmissionControl Protocol)

尽管TCP和UDP都使用相同的网络层(IP),TCP 却向应用层提供与UDP完全不同的服务。TCP提供一种面向连接的、可靠的字节流服务。

TCP: 传输控制协议,面向连接的协议

面向连接意味着两个使用 TCP 的应用(通常是一个客户和一个服务器)彼此交换数据之前必须先建立一个TCP连接,一对一传输。

三次握手(建立连接)

就像两个人打电话前确认对方是否在线:

tcp三次握手

1.客户端 → 服务器:发送 SYN(同步请求)包,告诉服务器「我...

阅读全文 →

四层模型介绍


一、TCP/IP四层模型介绍

OSI的七层协议体系结构的概念清楚,理论也比较完整,但它既复杂又不实用,ISO制定的OSI参考模型的过于庞大、复杂招致了许多批评。由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用。TCP/IP体系结构则不同,它现在已经得到了非常广泛的应用,TCP/IP是一个四层的体系结构。

它包含应用层、运输层、网际层和网络接口层(用网际层这个名字是强调这一层是为了解决不同网络的互连问题 ),不过从实质来讲,TCP/IP只有最上面的三层,因为最下面的网络接口层基本上和一般的通信链路的功能上没有多大差别.

二、TCP/IP四层模型

tcp:ip四层.png

每一层负责不同的功能:

链路层:...

阅读全文 →

计算机网络介绍


计算机网络

计算机网络是由通信介质将地理位置不同的且相互独立的计算机连接起来,实现数据通信与资源共享

网络分类

按照网络拓扑分类

总线型:一般传输介质为同轴电缆,需要T型头和信号终结器

总线型.png

环形:需要申请令牌才可以通信。

环型.png

星型:中央节点压力大,单点故障

星型.png

网型:效率高,网络复杂

网型.png

按地域分类:参照物不同,类型不同

局域网(LAN):一个公司、一个家庭

城域网(MAN):一个区、一个城市、一个国家

广域网(WAN):一个国家、全世界

网络设备

交换机:负责组建局域网,研究的是MAC地址

交换机.jpeg

路由器:负责组建广域网,研究的是IP地址

路由器.jpeg

传输介质

同轴电缆、双绞线、光纤

目前常用的就是双绞线和光...

阅读全文 →

OSI七层模型


ISO介绍

国际标准化组织(International Organization for Standardization,ISO)简称ISO,是一个全球性的非政府组织,是国际标准化领域中一个十分重要的组织。ISO国际标准组织成立于1946年,

ISO负责目前绝大部分领域(包括军工、石油、船舶等垄断行业)的标准化活动。ISO现有117个成员,包括117个国家和地区。中国是ISO的正式成员,代表中国参加ISO的国家机构是中国国家技术监督局(CSBTS)。

网络模型介绍

在上世纪70年代,不同的厂商的计算机之间采用的都是本厂的通信协议,不同厂商间的计算机是无法通信的,为了解决这个问题,ISO组...

阅读全文 →

requests模块基础


Requests 是 Python 中最流行的 HTTP 客户端库,由 Kenneth Reitz 开发,以“人类友好”为设计理念,简化了发送 HTTP 请求、处理响应的流程。相比 Python 内置的 urllib 库,Requests 语法更简洁,自动处理编码、Cookie、会话等细节,是接口测试、爬虫、API 交互等场景的首选工具。

一、Requests 安装

Requests 是第三方库,需通过 pip 安装:

pip install requests

二、核心功能:发送 HTTP 请求

Requests 支持所有常见的 HTTP 方法(GET、POST、PUT、DELE...

阅读全文 →

subprocess


Python 的 subprocess 模块用于创建新进程、执行外部命令或程序,并能与这些进程的输入/输出/错误流交互,获取其执行结果(如返回码、输出内容)。它是 Python 中替代旧有模块(如 os.systemos.popen)的推荐方案,提供了更灵活、安全的进程管理能力。

一、核心功能与基本概念

subprocess 模块的核心是启动外部进程(如系统命令 ls/dir、可执行文件 exe、其他脚本 bash/python 等),并通过以下方式与进程交互:

  • 向进程发送输入(stdin)。
  • 捕获进程的输出(stdout)和错误信息(stderr)。
  • 获取进程的退出码(...

阅读全文 →

Fabric


Fabric是一个python的远程执行shell的库,同时它也是一个命令行工具。它提供了丰富的同 SSH 交互的接口,可以用来在本地或远程机器上自动化、流水化地执行 Shell 命令。

Python 的 Fabric 是一个基于 SSH 协议的自动化部署与运维工具,它在 Paramiko(底层 SSH 实现)的基础上封装了更简洁的 API,支持通过任务(Task) 定义批量操作(如远程命令执行、文件传输、环境配置等),并可通过命令行直接调用,极大简化了多服务器集群的管理工作。

一、Fabric 版本与安装

Fabric 有两个主要版本,API 差异较大:
- Fabric 1.x:...

阅读全文 →

Paramiko


Python 的 Paramiko 是一个基于 SSH 协议的第三方库,用于实现 SSH 客户端功能,支持通过 SSH 连接远程服务器、执行命令、传输文件(SFTP)等操作。它广泛应用于自动化运维、远程服务器管理、批量任务执行等场景,无需手动登录服务器即可通过代码完成远程操作。

一、Paramiko 安装

Paramiko 是第三方库,需通过 pip 安装:

pip install paramiko

二、核心功能:SSH 远程操作

Paramiko 的核心是通过 SSH 协议与远程服务器建立连接,主要功能包括:
- 执行远程命令(单条或批量)。
- 通过 SFTP(SSH Fil...

阅读全文 →

psutil


psutil简介

psutil是一个跨平台库(http://pythonhosted.org/psutil/)能够轻松实现获取系统运行的进程和系统利用率(包括CPU、内存、磁盘、网络等)信息。

它主要用来做系统监控,性能分析,进程管理。它实现了同等命令行工具提供的功能,如ps、top、lsof、netstat、ifconfig、who、df、kill、free、nice、ionice、iostat、iotop、uptime、pidof、tty、taskset、pmap等。目前支持32位和64位的Linux、Windows、OS X、FreeBSD和Sun Solaris等操作系统。

...

阅读全文 →

Flask-Blueprint


Flask-Blueprint(蓝图)是 Flask 中用于模块化组织应用的核心机制。当应用规模扩大时,所有路由、视图函数、静态文件和模板若都放在一个文件中,会导致代码臃肿、难以维护。蓝图可以将应用拆分为多个功能模块(如用户模块、商品模块、订单模块),每个模块独立管理自己的路由、视图、模板和静态资源,最终通过“注册”整合到主应用中,实现代码的解耦和复用。

一、为什么需要蓝图?

  • 模块化开发:将不同功能(如用户管理、内容发布)拆分为独立模块,每个模块有自己的路由、视图和资源。
  • 代码复用:蓝图可以被多个应用共享(如多个项目共用一个“用户认证”模块)。
  • 灵活扩展:通过注册/取消注册蓝图...

阅读全文 →