news 2026/4/16 12:34:14

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/12 6:58:27

技术团队必备:Excalidraw手绘白板助力高效头脑风暴

技术团队必备:Excalidraw手绘白板助力高效头脑风暴 在一次跨时区的架构评审会上,北京的研发工程师刚提出“服务网关应前置鉴权逻辑”,远在柏林的产品负责人便已在共享画布上拖出一个带锁图标,连接至 API Gateway 节点。几秒钟后&a…

作者头像 李华
网站建设 2026/4/16 11:11:36

Excalidraw集成AI功能后,绘图效率提升十倍

Excalidraw集成AI功能后,绘图效率提升十倍 在一次跨时区的远程架构评审会上,团队争论了整整40分钟——不是因为技术方案有分歧,而是没人能快速画出清晰的系统拓扑。有人用PPT拉线条,有人在纸上拍照上传,最终拼凑出的图…

作者头像 李华
网站建设 2026/4/16 11:09:52

15、个性化与维护 Windows 7 系统全攻略(上)

个性化与维护 Windows 7 系统全攻略(上) 在使用 Windows 7 系统时,我们可以对系统进行多方面的个性化设置,让它更符合我们的使用习惯和审美需求,同时也需要进行一些常规的系统维护,以确保系统的稳定运行。下面将详细介绍这些操作。 一、桌面个性化设置 (一)设置桌面…

作者头像 李华
网站建设 2026/4/16 0:28:27

为什么越来越多开发者选择Excalidraw做原型设计?

为什么越来越多开发者选择 Excalidraw 做原型设计? 在技术团队的日常协作中,你是否经历过这样的场景:会议刚开始三分钟,白板上已经堆满了潦草的箭头和框框,有人正手忙脚乱地解释“这个服务调那个网关”,而…

作者头像 李华
网站建设 2026/4/10 6:36:51

基于springboot + vue智慧医药系统

智慧医药 目录 基于springboot vue智慧医药系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取: 基于springboot vue智慧医药系统 一、前言 博主介绍:✌️大…

作者头像 李华
网站建设 2026/4/11 1:33:07

Excalidraw利润率分析报表

Excalidraw:当手绘白板遇上AI,如何重塑团队协作的表达方式? 在一场远程产品评审会上,产品经理刚抛出一个复杂的微服务架构设想,工程师眉头紧锁,设计师默默打开Figma准备建模——但这次,没人再陷…

作者头像 李华