首页 > 其他分享 >初步认识网络

初步认识网络

时间:2022-10-09 12:04:56浏览次数:42  
标签:协议 认识 狼烟 网络 初步 传输 分层 就是


  大学期间学过计算机网络这个课本,当时学的时候,虽然在学,但是里边的很多东西都没有研究明白。随着时间的推移,稀里糊涂的给忘的差不多了。

  今天又花了点时间重新看了看网络相关的知识。

  之所以回头看,是因为今天在学 k8s 的时候,听到 UDP协议,有点蒙圈了。网络是在哪一层的了,忘了都干了什么事。

 

# #  TCP/IP 协议族,先明白什么是协议

  看了基本网络相关的书籍,大家都喜欢从一个 url 请求来分析网络,都经历了什么。我这篇文章先介绍一些基本的概念。

  首先先要明白什么是协议:协议就是一个约定,它是想要传输信息做的一个约定。举一个简单的例子,古时候的狼烟烽火传信,看到狼烟,就是告诉大家敌人来犯了。那好好的就怎么知道狼烟就代表敌人来犯了呢? 这就是想要传信息的人,提前见个面,摆上茶水,倒上酒,摆上花生米,说:咱们约定一下,看到我放狼烟就是敌人来侵犯了。 而在计算机里边,不同的硬件,不同的操作系统,想要进行传输消息,都需要约定好,不然就像一个只会说汉语的中国人和一个只会说英语的外国人对话,大家在拼命的交换信息,结果谁都没说明白。而网络发展到今天,今天的这个协议就是全世界的一个约定好的。多数都统一的情况下,少数不同意,那就不好意思了,少数服从多数,不然就不和你玩了。

 

# #  网路分层的思想

  我认为,其实这就是最早的分层的思想,我是做java后台开发的,然后开发中就来了分层解耦的思想,什么MVC。出发点是啥呢?其实就是为方便维护,改动一个地方的时候,不用改其他的东西。

  而网络从简单到非常的复杂,显然会有管理维护的问题。这种分层解耦的思想并不难理解,举个例子,一本书有一千页,需要修订内边的内容的时候,每次大家都对这一千页研究一遍,然后出一个修订版,这需要花很长时间。每次修订都要花这么多时间,随着内容的增多,需要花费更多的时间。于是有人提出来,咱们把一这一千页划分划分,每十页一个单元。这样需要修订,只需要研究这十页就够了。问题复杂程度突然就从一千的量级到了十的级别。

  所以这种复杂问题单元化,简单化的思想就是分层。而在网络这个复杂的世界里更需要划分了。

 

# # 再看一下网络商量成了什么样子

 

初步认识网络_解耦

 

  首先看到的是四层,每层都有自己商量好的事,那就是各层有各层的协议。

  分层就是将问题简单化的,划分清职责,各自干各自的活儿。

  你发起一个url 请求,就是一个网址,需要经过上图箭头的流动。

 

 # #  再来看看究竟各层都做了什么事

 

初步认识网络_字符串_02

 

# #  商量后的结果 ——协议

 应用层——  DNS (域名解析协议)  HTTP (超文本传输协议) FTP(文件传输协议)

 传输层—— TCP(可传输协议)     UDP(不可靠传输协议)

 网络层—— IP 协议  ARP(地址解析协议)

 

 

 为什么要有 DNS 协议? 

 符合人类的记忆习惯,人类的记忆,多数人是更喜欢字符串的,比方说 www.alibab.com  和 192.168.100.100 (并非真的,举个例子) ,相比这两个大家更喜欢去记前边的 ailibaba 。 

  既然人类更喜欢字符串,怎么不用字符串作为 IP 地址呢?原因是计算机更喜欢数字,大家都不愿意需妥协,所以干脆出一个服务,大家各自用各自喜欢的好了。

  于是有下边的过程:

初步认识网络_解耦_03

 

  

 

  

标签:协议,认识,狼烟,网络,初步,传输,分层,就是
From: https://blog.51cto.com/u_15812686/5740076

相关文章

  • 网络字节序与主机字节序的转换
    什么是字节序? 字节序指字节在内存中存储的顺序。字节序有两种:(1)小端字节序(Littleendinan),数值低位存储在内存的低地址,高位存储在内存的高地址;(2)大端字节序(Bigendian),数值......
  • 网络字节序与主机字节序的转换函数实践
    1.网络字节序与主机字节序在Linux网络编程中,经常碰到网络字节序与主机字节序的相互转换。说到网络字节序与主机字节序需要清晰了解以下几个概念。字节序,顾名思义,指字节在......
  • 网络字节序与主机字节序的相互转换
    1.前言知识  字节顺序是指(在计算机中)多于一个字节的数据类型在内存中的存放顺序。例如一个32位整数由4个字节组成,内存中存储这4个字节可以采取两种方法:小端字节序(littl......
  • 网络字节序与主机字节序的转换函数实践
    .什么是字节序字节序是处理器架构特性,用于指示像整数这样的大数据类型内部的字节如何排序。简单来说,就是指超过一个字节的数据类型在内存中的存储的顺序。那么很明显,像char......
  • 网络字节序与主机字节序的转换函数实践
    主机字节序 在不同的CPU处理器下,有不同的字节序类型,而字节序是指整数在内存中存储的顺序叫做主机序。最常见的主机序有两种:大端存储(Bigendian):最高有效位存于最低内存地......
  • 网络字节序与主机字节序的转换函数实践
    在Linux网络编程中,经常碰到网络字节序与主机字节序的相互转换。说到网络字节序与主机字节序需要清晰了解以下几个概念。字节序,顾名思义,指字节在内存中存储的顺序。比如一......
  • 网络字节序与主机字节序的相互转换
    在Linux网络编程中,经常碰到网络字节序与主机字节序的相互转换。说到网络字节序与主机字节序需要清晰了解以下几个概念。字节序,顾名思义,指字节在内存中存储的顺序。比如一个......
  • 网络字节序与主机字节序的转换
    为了进行转换,BSDsocket提供了转换的函数,有下面四个:(BSDSocket是UNIX系统中通用的网络接口,它不仅支持各种不同的网络类型,而且也是一种内部进程之间的通信机制)头文件:#inc......
  • 全志V853+XR829 Tina无线网络wifimanger2.0使用指南
    1.主题Tina无线网络wifimanger2.0使用指南2.问题背景产品:所有需要用到无线的产品硬件:V853+XR829软件:Tina4.0+Wi-Fi配置文件下载:https://bbs.aw-ol.com/topic/1867......
  • 使用PyG进行图神经网络的节点分类、链路预测和异常检测
    图神经网络(GraphNeuralNetworks)是一种针对图结构数据(如社交图、网络安全网络或分子表示)设计的机器学习算法。它在过去几年里发展迅速,被用于许多不同的应用程序。在这......