
网络原理
文章平均质量分 93
网络原理的学习
tao滔不绝
22级大学生,用写博客的方式记录学习,欢迎大家阅读
展开
-
网络原理初识(1)
类似换灯泡,灯泡有很多种,很多厂商生产出来,不同的厂商生产出的灯泡形状可能会各不相同,但是为了能和家里的灯座规格匹配上,就会统一每个厂商做的灯泡和灯座的规格,确保买的灯泡能装在家里的灯座上,这也是一种协议,是一种约定。描述了一个主机使用了哪些程序,有了IP地址,可以确定主机在网络的地址,但是一个主机可能会使用很多应用程序,主机接受到网络数据就需要区分出是交给哪个程序使用数据。随着时代的发展,越来越需要计算机之间的相互通信,共享软件和数据,即多个计算机协同工作完成业务,就有了网络互连。原创 2024-03-06 11:14:27 · 1968 阅读 · 35 评论 -
网络原理初识(2)
网络协议被拆分出来后,就把这些协议进行分层,把功能相似的协议放到同一层,上层协议能调用下层协议的功能,下层协议给上层协议提供服务。以太网就是日常最常见到的 有线网络,日常用到的网线,也叫做 “以太网线”,日常用到的网口,也叫做 “以太网口”,用到的交换机,也叫做 “以太网交换机”。如上图,电话机协议换成汉语协议和英语协议,还是能打电话,说汉语的就使用无线电,说英语的就使用电话机,还是可以实现打电话这个功能,并没有啥影响。对于UDP报头来说,按照以太网数据帧的格式,来解析,取出其中的载荷,再交给上层协议。原创 2024-03-07 18:24:59 · 1293 阅读 · 2 评论 -
网络编程套接字(1)—网络编程基础
网络编程,指网络上的主机,通过不同的进程,以编程的方式实现网络通信(或称为网络数据传输)。当然,我们只要满足进程不同就行;所以即使是同一个主机,只要是不同的进程,基于网络来传输数据,也属于网络编程。特殊的,对于开发来说,在条件有限的情况下,一般也是在一个主机中运行多个进程来实现网络编程。但是我们一定要明确,我们的目的是提供网络上不同主机,基于网络来传输数据资源。进程A:编程来获取网络资源。进程B:编程来提供网络资源。原创 2024-03-07 22:02:07 · 1555 阅读 · 7 评论 -
网络编程套接字(2)——Socket套接字
对于字节流来说,可以简单理解为,传输数据是基于IO流,流式数据的特征就是在IO流没有关闭的情况下,是无边界的数据,Socket套接字,是由系统提供用于网络通信的技术,是基于TCP / IP协议的网络通信的基本操作单元。不是物理上的连接,虚拟的连接,比如打电话,打电话者拨号,接电话者要点击接通才能进行通信,发送一块数据假如100字节,必须一次发送,接收也必须一次接收100字节,而不能分100次,每次一个字节。,比如像斑马线上的马路,同一时间,对面的人既可以对面走过来,也可以从我这里走到对面。原创 2024-03-08 09:47:28 · 1324 阅读 · 14 评论 -
网络编程套接字(3)——Java数据报套接字(UDP协议)
普通用户千千万,其中电脑上的环境也会千差万别,天知道用户按照了什么鬼程序,把你的服务器端口给占用了,你的程序也会因为端口的绑定失败而无法启用,用户就会怪在你头上,说你代码写的不行。,字节数组里的内容不一定是二进制数据,也可能是文本数据,把文本数据交给 String 来保存,也是恰到好处,就算是二进制数据,Java的String 也是可以保存的。对于服务器来说,需要不停的收到请求,返回响应。,如果一个端口被进程A绑定了,如果进程B绑定这个端口,就会失败,除非进程A释放了这个端口,进程B才能绑定上。原创 2024-03-09 23:38:23 · 1893 阅读 · 12 评论 -
网络编程套接字(4)——Java套接字(TCP协议)
这两流对象内部不持有文件描述符,只是只有一些内存结构。内存结构可以被 gc 释放。原创 2024-03-14 22:52:13 · 2009 阅读 · 33 评论 -
网络原理(1)——UDP协议
接下来这个数据报通过网络传输到达接收端,接收单收到这个数据之后,也会按照同样的算法,再计算一遍 CRC 的值,得到的结果是 value2,比较自己计算的 value2 和收到的 value1 是否一致,如果是一致,就说明数据是ok的,如果不一致,传输过程就发生了比特翻转了。可读性和扩展性都提升很多,标签的名字可以对数据起到描述的效果,后续要增加一些属性,就新增一个标签即可,对于已有的代码影响不大,代码中按照标签名字获取到标签的值,新增新的标签对于已有代码都没啥影响。而这样的数据是按照二进制的方式来组织的。原创 2024-03-16 14:13:54 · 1432 阅读 · 37 评论 -
网络原理(2)——TCP协议(传输层)
比如上次读的最后一个字节的序号是 3000,新收到的一个数据包的序号是 1001,这个 1001 一定是之前已经读过的了。这个时候同样可以把这个新的数据包判定为 “重复的包” 直接丢弃。原创 2024-03-17 16:52:20 · 1341 阅读 · 13 评论 -
网络原理(3)——TCP协议的特性
所谓的syn就是一个特殊的TCP数据报。原创 2024-03-20 17:36:55 · 2477 阅读 · 43 评论 -
网络原理(4)——TCP协议的特性
这时候对端很久都。原创 2024-03-22 11:39:10 · 1431 阅读 · 38 评论 -
网络原理(5)——IP协议(网络层)
报头内信息如图以下是IP报头内的信息介绍NAT机制把IP分为了两大类:1、私网 IP / 局域网 IPIP地址是以“10.* ”,“172.16-172.31.*”,“192.168.*.*”。2、公网 IP / 广域网 IP除了上面私网这种格式的IP地址,其他都是公网IP地址。这里要求,公网/广域网的IP地址不能重复,每个都是唯一的;而私网/局域网则不同,局域网要求同一个局域网内(连在同一个路由器)的IP不能有重复,但不同局域网的IP可以重复。(1)、公网设备访问公网设备;原创 2024-03-23 13:13:08 · 2178 阅读 · 44 评论 -
网络原理(6)——IP协议
目录一、网段划分现在的网络划分:1、一般情况下的家庭网络环境2、IP地址3、子网掩码4、网关以前的网络划分:二、特殊IP1、环回 IP2、主机号为全 0 的IP3、广播地址IP三、路由选择(路线规划)——通过子网掩码区分网络号和主机号如图是Windows系统控制平台下网络IP的设置界面,下面也会介绍这些内容下面介绍一下家庭网络的一般的部署情况: 1、如果在一个局域网中,网络号和主机号都相同,就不能上网,因为每个主机都是单独的个体,如果两个主机的主机号都一样,则不能辨别这两个主机谁是谁,网络数据原创 2024-03-25 07:48:52 · 2439 阅读 · 41 评论 -
网络原理(7)——以太网数据帧和DNS协议(数据链路层和应用层)
有些程序,可以通过mac地址来作为你机器的身份表示,例如外挂,只有在你电脑上插u盘才能用,其他电脑插上就不能用,原因就是制作外挂者这里的服务器,用户这边的客户端,服务器利用mac地址就知道哪些人是从自己这买的外挂,然后允许他用外挂(声明:制作外挂、售卖外挂均为违法行为,请遵纪守法,做好合法公民)但是随着互联网发展的越来越快,域名和服务器都越来越多,此时维护的成本就很大,所以大佬们就干脆 搭建一个服务器,提供域名解析的功能(之前的host内容也放到服务器上了),你的设备想要访问某个域名,就会先到。原创 2024-03-26 08:00:00 · 2098 阅读 · 38 评论 -
网络原理 - HTTP / HTTPS(1)——http请求
fiddler 是抓包工具,抓包工具本质上就是 “代理程序,能够获取网络上传输的数据,并且显示出来,给程序员提供一些参考。其中有一种叫高大全wireshark,可以抓各种协议的数据包(TCP、UDP、IP、以太网等等),因为涵盖的范围比较广,所以使用起来会更复杂,但fiddler是一种专注于HTTP的抓包,相对于wireshark的使用更简单,而我们目前也是在学习HTTP。原创 2024-03-29 21:54:28 · 3220 阅读 · 46 评论 -
网络原理 - HTTP / HTTPS(2)——http请求
当我们登录gitte时(第一次登录,或者把浏览器这边已经存在的Cookie删除),第一次登录时,请求里面是没有Cookie的,当服务器返回响应时,响应报头里面就会包含Set-Cookie(有三个),重点关注第三个,里面会包含一个信息:gitee-session-n 这样的属性值,属性值里面是一串很长的加密之后的信息,这个信息相当于用户当前的身份标识(令牌),如果要访问gitte的其他页面,就会带着这个令牌,进行访问,返回带着你这个用户信息的网页响应。但是有些网页确实要访问呢?原创 2024-04-03 13:00:27 · 2357 阅读 · 28 评论 -
网络原理 - HTTP / HTTPS(3)——http响应
因为商业产品往往是很严肃的,即使对产品本身逻辑没有什么影响,但指不定哪天,就会背刺你一下,就这么一下,很可能会导致我们丢饭碗;因为以前的漫游费很贵,要是在不同省份就会换成当前省份的手机号码,但是换了手机号后,朋友亲人怎么知道我换了手机号,要一个一个电话打给他们吗?浏览器会把重定向的结果记录下来,后续再次访问,就会直接访问重定向的目标地址,不必再多跳转一次了(如果是临时重定向,就不太方便缓存)指的是我明明访问的是A网站,但A网站会告诉你,你去访问B网站,浏览器就会自动跳转到B网站。原创 2024-04-04 09:35:04 · 1962 阅读 · 26 评论 -
网络原理 - HTTP / HTTPS(4)——构造http请求
,大家就自行在网上找资源吧,下载完后,我们按照指引,往下next。postman官网下载安装登录测试详细教程-优快云博客第一次安装,需要进行登录,我们注册一个账户。如图:点击Workspaces,这里指的是工作空间,我们点击创建新的工作空间,如图:选择一些选项,如图:创建完后,点击这里的+号,如图:就可以构造http请求了,如图:这里每个标签页,都是一个构造http请求的配置页面,上面的send按钮,是发送请求到目标服务器的按钮。原创 2024-04-05 09:37:15 · 1842 阅读 · 32 评论 -
网络原理 - HTTP / HTTPS(5)——https协议
证书是公证机构提供的,证书其实是一个结构化数据里面会包含很多属性,但也是字符串形式的,证书会包含一系列的信息,例如:服务器的主域名、服务器生成的公钥、证书有效期、公证机构信息、证书签名等等。引入证书就是为了让客户端这边,能够识别出,收到的公钥是不是服务器传过来的。这个证书是第三方提供的所以服务器这边要去第三方申请一个证书(提交材料会包含服务器的地址、域名等等),第三方这边同意后就会给给服务器颁发一个证书。原创 2024-04-06 16:46:59 · 3490 阅读 · 45 评论