网络编程中的互联网协议 , IP地址 , 域名 , 端口 , 架构 , 网页数据请求 , 响应码

简介: 网络编程中的互联网协议 , IP地址 , 域名 , 端口 , 架构 , 网页数据请求 , 响应码

第十二节 网络基础

1.互联网协议

通讯协议:网络通讯的基础
ip协议:是支持网络之间互联的数据包协议,是提供网络之间行为的一个标志
tcp/ip协议:规定一种可靠的数据信息传递服务,与ip协议功能类似,可以分开,也可以合并
在实际中两个协议可以进行互补,也是互联网最常见的基础协议(tcp/ip协议族)
tcp/ip协议将网络分为4层 :
网络接口层, 网络层,传输层,应用层
应用层: http,https(安全传输协议),DNS(解析域名, 网址解析为ip地址),FTP(文件传输)
传输层: TCP, UDP
网络层:IP, ICMP
网络接口层:WAN,LAN
HTTP协议:超文本(不单单是文本,而且可以传输各种信息,包括mp3,mp4)传输协议,常用浏览器和服务器之间传递信息
HTTPS协议:超文本传输安全协议,就是使用SSL/TSL加密协议已经HTTP协议结合进行网络传输

2、IP地址

ip地址:就是ip协议提供一种统一的地址格式,是每一个主机地址和网络地址结合
每一个ip地址包含两个识别码(id),就是网络id和主机id
查看ip地址:windows:ipconfig
  mac,linux :ifconfig,ip a
ipv4:是目前都在ip地址,是以十进制表示
ipv6:目前正在推广的ip地址,以十六进制进行的
ip地址的分类:
A类:
00000000.00000000.00000000.00000000
有一个字节是网络地址和三个主机地址,网络地址最高位必须是0
网络地址有126个,主机地址:256*2-2
范围:1.0.0.0 ~ 126.255.255.254
B类:
10000000.00000000.00000000.00000000
有两个字节是网络地址和两个字节为主机地址, 网络最高必须是10
地址范围:128.0.0.0 ~ 192.255.255.254
C类:
有三个字节网络地址,一个字节为主机地址,网络地址最高位必须是110
网络地址范围:192.0.0.0 ~ 223.255.255.254
D类
这个地址是多点广播地址 :范围224.0.0.0 ~ 239.255.255.254
E类:
这个地址用于测试开发,范围:240.0.0.0~255.255.255.254
255.255.255.255 广播地址
但是下面是必须要记住的地址
私有网络:
10.0.0.0 ~ 10.255.255.255
172.16.0.0 ~ 172.31.255.255
192.168.0.0 ~ 192.168.255.255
我们还有一个很特殊的地址, 本机地址
127.0.0.1 本机地址
我们还有一个本机回路测试地址: 127.0.0.1 ~ 127.255.255.255

3、域名

在访问一台服务器的时候,需要服务的计算机ip地址,但是ip多变而且不好记忆,就推出域名技术
(ip名字) 域名用于数据传输
DNS
域名和ip都是识别计算机地址, ip是网络唯一的标识,DNS将域名和ip直接进行对应关系储存

4、端口

在访问一台服务器的时候,我们知道地址在哪里,但是我们却不知道门口在哪里
端口号就是门牌号
知名端口: 固定分配给特定的程序的,范围0-1023
80 http协议端口  443 https协议端口
动态端口是操作系统随机分配的,程序结束后才被释放出来:1024~65535
3306 mysql端口

5、架构

1. C/S
指的是客户端与服务端 的架构,只管架构从用户层面进行划分
1.应用类:需要安装软件:微信,qq,抖音
好处能很好绑定用户的使用
开发成本高
2. B/S
指的是浏览器与服务端的架构,只需要通过浏览器发送https协议到服务器响应对应的资源就行了
好处就是不需要让用户安装软件
用户使用率低
慕课网,bilili网站

6、网页数据请求

在http协议中,网页数据请求两种格式:get请求和post请求
get请求:发送数据的时候数据会显示url链接上面
优点: 请求快,用于一些查询,或者一些大量数据上面去
缺点: 不安全,字符串长度有限制,不同浏览器限制长度是不一样的
post请求:第一不会出现显示在浏览器地址栏上面
而且可以发送任何数据类型,没有数据长度类型
请求慢

7、响应码

响应码:1**
改响应为临时应,识别临时响应并需要请求继续操作响应的响应码
100 识别服务器收到请求一部分,正在等待其他部分
101 请求数据要求服务器切换协议,服务器确认
响应:2**
200 服务器已经处理完请求数据
201 请求成功并且完成下一次资料链接
响应:3**
响应码表示完成请求,需要等待下一步操作
响应 4**
就是请求
400 服务器无法解析语法
401 请求要求身份验证,注意出现登录业务
403 服务器拒绝请求 
404 服务器找不到请求对应的网页
408 服务器等待请求超时
响应:5**
响应码表示发送请求时, 服务器内部发生错误


相关文章
|
9月前
|
监控 负载均衡 安全
WebSocket网络编程深度实践:从协议原理到生产级应用
蒋星熠Jaxonic,技术宇宙中的星际旅人,以代码为舟、算法为帆,探索实时通信的无限可能。本文深入解析WebSocket协议原理、工程实践与架构设计,涵盖握手机制、心跳保活、集群部署、安全防护等核心内容,结合代码示例与架构图,助你构建稳定高效的实时应用,在二进制星河中谱写极客诗篇。
WebSocket网络编程深度实践:从协议原理到生产级应用
|
安全 NoSQL MongoDB
XJ-Survey:这个让滴滴日均处理1.2亿次问卷请求的开源系统,今天终于公开了它的架构密码!
嗨,大家好,我是小华同学。今天为大家介绍一款由滴滴开源的高效调研系统——XJ-Survey。它功能强大,支持多类型数据采集、智能逻辑编排、精细权限管理和数据在线分析,适用于问卷、考试、测评等场景。采用 Vue3、NestJS 等先进技术栈,确保高性能与安全性。无论是企业还是个人,XJ-Survey 都是你不可错过的神器!项目地址:[https://github.com/didi/xiaoju-survey](https://github.com/didi/xiaoju-survey)
630 15
|
网络协议 安全 Go
Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
【10月更文挑战第28天】Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
412 13
|
XML Java 数据库
在微服务架构中,请求常跨越多个服务,涉及多组件交互,问题定位因此变得复杂
【9月更文挑战第8天】在微服务架构中,请求常跨越多个服务,涉及多组件交互,问题定位因此变得复杂。日志作为系统行为的第一手资料,传统记录方式因缺乏全局视角而难以满足跨服务追踪需求。本文通过一个电商系统的案例,介绍如何在Spring Boot应用中手动实现日志链路追踪,提升调试效率。我们生成并传递唯一追踪ID,确保日志记录包含该ID,即使日志分散也能串联。示例代码展示了使用过滤器设置追踪ID,并在日志记录及配置中自动包含该ID。这种方法不仅简化了问题定位,还具有良好的扩展性,适用于各种基于Spring Boot的微服务架构。
317 3
|
网络协议 视频直播 C语言
C语言 网络编程(三)UDP 协议
UDP(用户数据报协议)是一种无需建立连接的通信协议,适用于高效率的数据传输,但不保证数据的可靠性。其特点是无连接、尽力交付且面向报文,具备较高的实时性。UDP广泛应用于视频会议、实时多媒体通信、直播及DNS查询等场景,并被许多即时通讯软件和服务(如MSN/QQ/Skype、流媒体、VoIP等)采用进行实时数据传输。UDP报文由首部和数据部分组成,首部包含源端口、目的端口、长度和校验和字段。相比TCP,UDP具有更高的传输效率和更低的资源消耗。
|
缓存 网络协议 网络性能优化
C语言 网络编程(二)TCP 协议
TCP(传输控制协议)是一种面向连接、可靠的传输层协议,通过校验和、序列号、确认应答等机制确保数据完整性和可靠性。通信双方需先建立连接,再进行通信,采用三次握手建立连接,四次挥手断开连接。TCP支持任意字节长度的数据传输,具备超时重传、流量控制及拥塞控制机制。三次握手用于同步序列号和确认双方通信能力,四次挥手则确保双方均能完成连接关闭操作,保证数据传输的可靠性。
|
缓存 网络协议 算法
(二)Java网络编程之爆肝HTTP、HTTPS、TLS协议及对称与非对称加密原理!
作为一名程序员,尤其是Java程序员,那必须得了解并掌握HTTP/HTTPS相关知识。因为在如今计算机网络通信中,HTTP协议的作用功不可没,无论是日常上网追剧、冲���、亦或是接口开发、调用等,必然存在HTTP的“影子”在内。尤其对于WEB开发者而言,HTTP几乎是每天会打交道的东西。
810 10
|
SQL 关系型数据库 分布式数据库
PolarDB产品使用问题之怎么对外网提供可访问域名端口
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
数据采集 网络协议 Python
🔍HTTP协议不为人知的秘密:Python网络编程高手是如何炼成的?
【7月更文挑战第29天】探索HTTP协议核心—请求与响应的交互:浏览器发送请求至服务器,后者处理后返回资源数据与状态码(如200表示成功)。Python高手需理解这些机制并掌握工具如`requests`库。HTTP头信息(Headers)含元数据如`User-Agent`、`Content-Type`及`Cookie`用于会话管理。尽管HTTP无状态,但可通过`Cookie`和`Session`模拟状态保持。成为高手之路包括:深入理解协议、实践项目、阅读优秀库源码如`requests`、跟进新技术如HTTP/2与HTTP/3,并积极参与社区交流。
264 1
|
域名解析 Kubernetes 负载均衡
在K8S中,外部访问容器服务,比如说提供了一个域名,链路怎么走?数据经过哪些组件?
在K8S中,外部访问容器服务,比如说提供了一个域名,链路怎么走?数据经过哪些组件?