news 2026/4/2 10:46:09

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/3/21 21:07:37

Excalidraw作为在线课程辅助教学工具的应用

Excalidraw:重塑在线教学的可视化协作引擎 在一场关于操作系统原理的直播课上,教师一边讲解进程调度机制,一边在屏幕上快速勾勒出“就绪队列”与“阻塞队列”的转换流程。学生不仅实时看到图形演化过程,还能通过点击按钮“上台”补…

作者头像 李华
网站建设 2026/3/30 12:58:02

13、Windows Live Mail与Windows 7安全使用全攻略

Windows Live Mail与Windows 7安全使用全攻略 在日常使用电脑的过程中,Windows Live Mail是一款常用的邮件客户端,而Windows 7系统的安全问题也至关重要。下面将详细介绍Windows Live Mail的各项操作以及Windows 7系统的安全防护措施。 一、Windows Live Mail附件操作 当收…

作者头像 李华
网站建设 2026/3/28 8:07:22

还在手动部署大模型?Open-AutoGLM自动化方案已全面开放,速来领取

第一章:还在手动部署大模型?是时候告别低效运维了在大模型时代,手动部署和运维不仅耗时耗力,还极易因配置不一致引发服务异常。从环境依赖安装到模型加载、服务暴露,每一个环节都可能成为系统稳定性的隐患。自动化部署…

作者头像 李华
网站建设 2026/3/28 10:01:41

Excalidraw支持哪些导出格式?一文讲清所有选项

Excalidraw支持哪些导出格式?一文讲清所有选项 在技术团队的日常协作中,一张草图往往胜过千言万语。无论是系统架构讨论、流程梳理,还是产品原型构思,可视化表达已成为沟通的核心载体。而 Excalidraw 凭借其独特的手绘风格和极简…

作者头像 李华
网站建设 2026/3/30 5:30:29

揭秘Open-AutoGLM体积膨胀真相:如何实现98%压缩率而不丢失功能

第一章:揭秘Open-AutoGLM体积膨胀真相在开源大模型生态快速演进的背景下,Open-AutoGLM 因其自动化推理与代码生成能力受到广泛关注。然而,用户普遍反馈其部署包体积异常庞大,远超同类模型平均水平。这一现象引发了社区对模型冗余、…

作者头像 李华
网站建设 2026/4/3 6:02:50

PHP复兴村医院医疗挂号预约处方开药缴费管理系统_6q87918h功能全

目录 具体实现截图项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理 具体实现截图 本系统(程序源码数据库调试部署讲解)带文档1万字以上 同行可拿货,招校园代理 PHP复兴村医院医疗挂号预约处方开药缴费管理系统_6q87918h功…

作者头像 李华