news 2026/4/13 5:53:48

0基础 学习网络编程你需要知道的最基础的一些概念(IP 端口 TCP协议)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
0基础 学习网络编程你需要知道的最基础的一些概念(IP 端口 TCP协议)

什么是网络编程呢?

既然提到了网络 ,那么网络带给我们最方便的事情就是进行交流 ,即使相隔万里 ,只要有网络有信号 ,我们就可以交流 ,网络更淡化了地域之间的隔阂 ,让人们足不出户就可以轻松地看见世界

网络编程()也是同样的作用 ,最基础的功能也就是可以实现不同计算机上运行的程序间进行数据交互

这就涉及到了网络编程的三要素IP 端口号 协议

用通俗的话来讲这三要素的作用就是:

在网络中进行数据交互时 ,我们要先通过IP地址(每一台计算机都有不同的IP地址)找到我想要发送的目标设备 ,在通过端口号确定发送渠道(查找到目标设备以后 ,我是要用QQ来发送信息 还是微信来发送等等渠道) ,最后通过协议(协议就是对发送内容的检查 ,不是说什么东西都可以发 ,比如一些平台限制一些带有侮辱性的词汇等等)对发送的内容进行分层包装

(1) IP地址 :这是网络环境下每一台计算机的唯一标识 ,通过IP地址来找到指定的计算机

(2)端口 : 用于标识进程的逻辑地址 ,通过端口来找到指定的进程

(3)协议 : 定义通信规则 ,符合协议则可以通信 ,否则就无法正常通信

IP地址

作为了解: IP地址分为两类 IPv4 和IPv6

前者是目前大家使用的IP地址

后者是未来使用的IP地址 ,比前者更加复杂 ,可容纳更多的IP

这里大家可以Win+R输入cmd使用命令查看自己电脑的IP地址

拓展知识:当我们在浏览器上通过网址(域名)进行搜索时 ,会有域名解析器将域名解析为IP地址 ,然后再进行访问 ,这样做的目的是 网址(域名)更加方便记忆

大家也可以在打游戏之前通过ping语法测一测当前的网速 ,一般50ms以下就可以不卡顿的进行游戏

端口和端口号

端口号:就是各个应用程序的端口号 ,例如qq ,微信 ,这个软件的端口号都是不同的 ,根据不同的端口号 ,也就可以访问不同的应用程序

端口号分为两类:

知名端口号: 指众所周知的端口号 ,范围从0到1023

动态端口号: 指程序员开发应用程序使用端口号称为动态端口号 ,范围从1024到65535

协议

协议分为两种 ( TCP / UCP)

通俗的理解 TCP就像打电话 需要一个打电话 一个接电话 这样打电话的人才可以说话传达信息(三次握手)

UCP就像群聊一样 ,不需要这样复杂的工序 ,只要发送了 ,有人收到就是看到了 ,没收到就是没看到 ,不需要收到信息的人进行同意以后在接受信息

这里主要讲解一下TCP协议

TCP是英文缩写 ,翻译成汉语就是 传输控制协议

它是一种面向连接的 ,可靠的 ,基于字节流的传输层通信协议

特点:

- 面向有连接
- 采用字节流传输数据 .理论无大小限制
- 安全(可靠)协议
- 效率相对较低
- 区分客户端和服务器端

通过TCP创建连接时 ,需要上面的打电话工序 ,即三次握手(需要客户端和服务端总共发送三个包确定连接的建立)

当双方通过握手 ,开始传输数据的时候 ,双方就像一个双向的管道一样建立连接 ,一共有四步

-客户端输入(接受信息)

-客户端输出(发信息)

-服务端输入(接受信息)

-服务端输出(发信息)

这样的连接方式在我们断开连接的时候 ,就需要四次挥手

因为TCP的连接是双向的 ,双向都要进行断开操作

这就是网络编程的三要素的基础概念 ,当我们在编写代码时 ,就需要创建通信双方独有的对象

这样的对象就是Socket套接字 ,数据在socket之间通过 数据报包(UDP协议) 或者 字节流(TCP协议) 的形式进行传输

socket 就是进程之间通信的一个工具 ,就好比现实生活中的插座 ,所有的家电要想工作都是基于插座进行 ,而进程之间想要进行网络通信就需要基于这个socket

具象化来说就是在上面的图片中加上socket底座 ,双端通过socket 进行数据传输

了解了这些 ,网络编程的三大要素 ,也就有了大致的概念 ,以后如果需要进行深入地学习, 就会更加容易上手 ,当我们了解这样的概念以后加以深入 ,做出来就是聊天室程序也就是可以实现的了

下一期 ,会通过python代码建立socket对象 ,实现一个可以通过网络远程发送一条信息/一个图片/一段音乐 的小程序 ,以加深0基础学习者对于网络编程的理解 ,敬请期待 ~ ~ ~ !

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/9 1:38:39

Open-AutoGLM问题响应慢?掌握这3个关键优化点,效率提升90%

第一章:Open-AutoGLM问题响应慢的现状与挑战Open-AutoGLM作为一款基于大语言模型的自动化代码生成工具,在实际应用中逐渐暴露出响应延迟显著的问题。用户在提交复杂任务请求后,系统常需数十秒甚至更长时间才能返回结果,严重影响了…

作者头像 李华
网站建设 2026/4/10 9:13:55

Python爬虫APP程序思维逻辑(附带源码)

请注意,这个示例是假设性的,并不代表任何真实网站或API。在实际使用中,你需要根据目标网站的具体结构来调整代码。环境准备 首先,确保你已经安装了requests和BeautifulSoup。如果没有安装,可以通过以下命令安装&#x…

作者头像 李华
网站建设 2026/4/12 12:23:45

如何涉及一个高质量API接口

设计一个高质量的API接口需要考虑多方面的因素,包括接口的易用性、稳定性、安全性以及性能等。下面是一些设计高质量API接口的基本思路,并附带部分简单的源码示例。一、设计思路 明确接口目的与功能 清晰定义API的目的和功能,确保每个接口都有…

作者头像 李华
网站建设 2026/3/27 2:15:19

从零开始使用Excalidraw创建专业级手绘架构图

从零开始使用 Excalidraw 创建专业级手绘架构图 在一次跨时区的系统设计评审会上,团队卡在了最基础的问题上:没人能快速画出当前服务调用链的清晰拓扑。有人尝试用 Visio 拖拽组件,却因不熟悉操作频频出错;另一人打开 PPT 手绘草图…

作者头像 李华
网站建设 2026/4/11 15:35:30

Thinkphp和Laravel小程序基于uniapp的简易个人旅行旅游系统设计与实现_52s4two1

文章目录具体实现截图主要技术与实现手段关于我本系统开发思路java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 同行可拿货,招校园代理 Thinkphp和Laravel小程序基于uniapp的简易个人旅行旅游系…

作者头像 李华
网站建设 2026/4/11 17:37:48

Thinkphp和Laravel小程序琅琊山景区智能导览系统_a93j6439人脸识别

文章目录具体实现截图主要技术与实现手段关于我本系统开发思路java类核心代码部分展示结论源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 同行可拿货,招校园代理 Thinkphp和Laravel小程序琅琊山景区智能导览系统_a93j643…

作者头像 李华