网络通讯原理简介以及演示通讯过程

简介: 网络通讯原理简介以及演示通讯过程

OSI网络七层参考模型


image.png

这是7层网络参考模型 非实现层面的


TCP/IP协议实现


image.png


TCP/IP协议实现了七层网络模型 
将展示层和会话层合并到了应用层
微信、QQ或tomcat进程都属于应用层 该层的常用协议http、https、ssh、ftp
程序员只需要关注这层就可以了
其他层次 比如传输控制层(TCP、UDP)、网络层(IP、路由协议)、链路层(ARP协议)是内核实现的
用户态通过系统调用切换到内核态


演示下网络交互过程


通过ssh登录linux操作系统执行命令exec
在没有任何浏览器或工具的情况下访问百度 取回百度主页
这一去一回过程牵扯到用户层、内核、tcp通信、http协议

exec 8<> /dev/tcp/www.baidu.com/80

/dev/tcp/www.baidu.com/80 这是一个路径 
前缀是/dev/tcp
linux操作系统一切皆文件 网络连接可以是一个文件 打印机可以是一个文件
以文件目录的方式来表示
内核最终会把它转换成socket

image.png


执行之后 在当前域中就有一个8了 
这个8的输入输出指向和百度的这个socket连接
此时假设已经有了一个三次握手的socket连接了
那么要取回百度服务器的主页的时候 
要给它发送什么才能取回来 牵涉到哪个协议
需要给百度发送一个http协议

GET / HTTP/1.0\n

/表示请求的资源
把这个字符串发送给百度 百度就知道了 你要请求主页了
协议就是规定了你发送的数据如何表示
HTTP协议就是数据如何表示HTTP协议

echo -e "GET / HTTP/1.0\n"


image.png


echo是打印
通过-e来识别换行符\n
http协议是拿换行符做切割得到一行行字符串
每行字符串会用空格做切割
遇到2个换行符之后才是post body信息
8<> 表示将输入输出的2个方向都给到了百度

echo -e "GET / HTTP/1.0\n" 1>& 8

将输出重定向到了8
1>& 标准输出
8的输出又指向了sokcet 给百度了
百度如果接受到了 那么就会给返回
那么就需要读取该返回内容
socket网络通讯是双向的 有输出就有输入
给百度发送了http请求协议头 文本

cat 0<& 8

读取socket 8中流回的内容


image.png

image.png

读到了百度给返回的
HTTP/1.0 200 OK是响应头
接着是响应头的键值对
接着2个换行符
接着是响应体 内容就是百度的主页页面
取回东西之后就会断开连接

cd /proc/$$/fd

image.png

0是程序指向终端的标准输入 system.in
1是标准输入system.out
2是system.error
这3个是任何程序都有的
socket 也可以给出一个数字也可以是一个递增的数字 来代表这个socket
fd文件描述符可以理解成一个变量 在java中 open一个文件得到一个file变量

lsof -p $$

image.png

本机随机端口号指向了百度的一个地址 80端口号 http协议
9 就是代表了对百度的一个socket
socket怎么建立的?
实际上是由内核完成的


总结


微信图片_20220501114719.png


连接不需要人管
连上之后 客户端和服务端之间的通讯 你说啥?牵扯到http协议 
连的是web server服务器所以用的http协议
连的是ftp服务器连的是ftp协议
应用程序application里面会有协议封装的过程
这个协议封装不是内核做的
而是某种软件 比如浏览器、postman、http client
用户在使用浏览器的时候不需要关注协议的封装只需要告诉它访问什么就可以了
相关文章
|
11天前
|
网络协议 安全 5G
网络与通信原理
【10月更文挑战第14天】网络与通信原理涉及众多方面的知识,从信号处理到网络协议,从有线通信到无线通信,从差错控制到通信安全等。深入理解这些原理对于设计、构建和维护各种通信系统至关重要。随着技术的不断发展,网络与通信原理也在不断演进和完善,为我们的生活和工作带来了更多的便利和创新。
51 3
|
2月前
|
并行计算 安全 网络协议
探索未来网络:量子互联网的原理与应用
本文深入探讨了量子互联网的基本概念、技术原理及其潜在应用。通过对量子纠缠、量子叠加和量子隐形传态等核心概念的解释,文章展示了量子互联网如何利用量子力学特性来实现超高速、超高安全性的通信。此外,还讨论了量子互联网在金融、医疗、国防等领域的应用前景,以及当前面临的技术挑战和未来的发展方向。
69 2
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习的奥秘:探索神经网络的核心原理
本文将深入浅出地介绍深度学习的基本概念,包括神经网络的结构、工作原理以及训练过程。我们将从最初的感知机模型出发,逐步深入到现代复杂的深度网络架构,并探讨如何通过反向传播算法优化网络权重。文章旨在为初学者提供一个清晰的深度学习入门指南,同时为有经验的研究者回顾和巩固基础知识。
63 11
|
4天前
|
网络协议 安全 算法
网络空间安全之一个WH的超前沿全栈技术深入学习之路(9):WireShark 简介和抓包原理及实战过程一条龙全线分析——就怕你学成黑客啦!
实战:WireShark 抓包及快速定位数据包技巧、使用 WireShark 对常用协议抓包并分析原理 、WireShark 抓包解决服务器被黑上不了网等具体操作详解步骤;精典图示举例说明、注意点及常见报错问题所对应的解决方法IKUN和I原们你这要是学不会我直接退出江湖;好吧!!!
网络空间安全之一个WH的超前沿全栈技术深入学习之路(9):WireShark 简介和抓包原理及实战过程一条龙全线分析——就怕你学成黑客啦!
|
15天前
|
机器学习/深度学习 人工智能 监控
深入理解深度学习中的卷积神经网络(CNN):从原理到实践
【10月更文挑战第14天】深入理解深度学习中的卷积神经网络(CNN):从原理到实践
50 1
|
18天前
|
网络协议 Linux 应用服务中间件
Socket通信之网络协议基本原理
【10月更文挑战第10天】网络协议定义了机器间通信的标准格式,确保信息准确无损地传输。主要分为两种模型:OSI七层模型与TCP/IP模型。
|
28天前
|
存储 安全 算法
网络安全与信息安全:构建数字世界的防线在数字化浪潮席卷全球的今天,网络安全与信息安全已成为维系现代社会正常运转的关键支柱。本文旨在深入探讨网络安全漏洞的成因与影响,剖析加密技术的原理与应用,并强调提升公众安全意识的重要性。通过这些综合性的知识分享,我们期望为读者提供一个全面而深刻的网络安全视角,助力个人与企业在数字时代中稳健前行。
本文聚焦网络安全与信息安全领域,详细阐述了网络安全漏洞的潜在威胁、加密技术的强大防护作用以及安全意识培养的紧迫性。通过对真实案例的分析,文章揭示了网络攻击的多样性和复杂性,强调了构建全方位、多层次防御体系的必要性。同时,结合当前技术发展趋势,展望了未来网络安全领域的新挑战与新机遇,呼吁社会各界共同努力,共筑数字世界的安全防线。
|
28天前
|
存储 安全 自动驾驶
探索未来网络:量子互联网的原理与应用
【10月更文挑战第2天】 本文旨在探讨量子互联网的基本原理、技术实现及其在通讯领域的革命性应用前景。量子互联网利用量子力学原理,如量子叠加和量子纠缠,来传输信息,有望大幅提升通信的安全性和速度。通过详细阐述量子密钥分发(QKD)、量子纠缠交换和量子中继等关键技术,本文揭示了量子互联网对未来信息社会的潜在影响。
|
4天前
|
网络协议 安全 算法
网络空间安全之一个WH的超前沿全栈技术深入学习之路(9-2):WireShark 简介和抓包原理及实战过程一条龙全线分析——就怕你学成黑客啦!
实战:WireShark 抓包及快速定位数据包技巧、使用 WireShark 对常用协议抓包并分析原理 、WireShark 抓包解决服务器被黑上不了网等具体操作详解步骤;精典图示举例说明、注意点及常见报错问题所对应的解决方法IKUN和I原们你这要是学不会我直接退出江湖;好吧!!!
|
1月前
|
人工智能 安全 网络协议
探索未来网络:量子互联网的原理与应用
本文深入探讨了量子互联网的基础原理、关键技术及其在未来通信领域的应用前景。通过分析量子纠缠、量子叠加等核心概念,揭示了量子互联网相较于传统互联网的优势所在。同时,文章还讨论了当前量子互联网领域面临的技术挑战和解决方案,为读者呈现了一个关于量子互联网的全面且深入的视角。
51 6