基础_TCP/IP
概念明确:
1:TCP/IP代表传输控制协议/网际协议,指的是一系列协议 为什么会叫TCP/IP、因为用的多,
2:HTTP 是属于应用层的协议
3:OSI七层模型和TCP/IP 平等,只是TCP/IP协议簇被广泛使用
TCP/IP协议簇基本框架就:应用层,传输层,网络层,链路层
最直白的解释 :如下
由光纤铺起来的一条IP高速路,一辆TPC卡车 载着你买的HTTP货物,真正发送到你家去
1:为什么是HTTP货物,不是其他ftp,ssh啊之类的, 你指望一家卖五金店的卖玩具? 所以你让浏览器不用http 用其他协议?
2:为什么是TCP卡车,如果卡车装的是一箱子钱,tcp像是配备了保镖(特殊的机制保证数据安全 不会传给别人) 你会使用UDP 三轮车还没有导航来到你的村里,随便送给一家?
3:为什么是IP高速公路:你先也可以选择走别的烂泥路并且建在喜马拉雅山的烂泥路协议(当然建成了能更快登顶,这就是特殊人群,特殊用处),不拦着你
5:为什么是光纤:你也可以用 线路,无线电
所以为什么四层协议里面各种模型叫做tcp/ip 因为用的多,比其他的好用

有了如上明确的概念 于是秃头的面试官拿着你的简历,眼睛斜视着你,嘴角勾起微笑就问道: 脑海中同时想起自己曾经被这些该死的问题支配的恐惧
1:请问HTTP和HTTPS的区别
概念:
HTTP是什么:超文本 传输 协议
超文本:图片,音频,文字, 这些叫做数据
传输:就是数据需要经过一系列的物理介质从一个端系统传送到另外一个端系统的过程。通常我们把传输数据包的一方称为请求方,把接到二进制数据包的一方称为应答方。
协议:指的就是是网络中(包括互联网)传递、管理信息的一些规范。如同人与人之间相互交流是需要遵循一定的规矩一样,计算机之间的相互通信需要共同遵守一定的规则,这些 规则就称为协议,只不过是网络协议。
SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持
SSL(Secure Sockets Layer 安全套接字协议),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层与应用层之间对网络连接进行加密
回答:
首先 第一点:HTTP是超文本传输协议,建立在TCP/IP的基础之上的 但是HTTP 是未经安全加密的协议 所以你的货物容易被偷
第二点:HTTPS比HTTP更安全,因为多了一层 TLS/SSL协议
第三点:https在地址栏是一https://开头,http是以:http开头
第四点:HTTP 的默认端口是 80,而 HTTPS 的默认端口是 443。
当你回答这些之后,面试官泛起一些波澜,这小子有货!
于是
2请问 HTTP 里面的GET和POST的区别
get:1:请求服务器返回资源,2:不安全因为请求参数会凭借在url后面,容易窃听篡改:3:长度有限制:4:会被浏览器cache缓存
post:1:数据提交2:长度没限制
在回答完之后,突然面试官插了一嘴,为什么get是不安全的,post和get谁更安全
错误回答:啊呀肯定post更安全啊,因为get传输方式是在url显示啊,容易被截获啊
正确回答:你错了,面试官,当你问起这个问题之后,你就没考虑到HTTP协议的存在,来我给你上一课
首先: HTTP协议中提到GET是安全的方法(safe method) 其意思是说GET方法不会改变服务器端数据,所以不会产生副作用。
如果是该用POST的地方用了GET,又说GET不安全,那GET也太冤枉了。
也就是说,只要我们正确选择使用GET和POST,那么GET是安全的。
当然以上回答之针对于get和post谁更安全这个话题
被将了一军的面试官,擦着额头上的虚汗,暗道:既然说到http那么
3请问什么是无状态协议,HTTP属于无状态协议吗,怎么解决无状态协议
1:无状态协议是:浏览器对于个人操作是没有记忆能力的,像我们登录网站,下次自动记住密码是Cookie的作用
2:HTTP不属于无状态协议啊
3:怎么解决:使用Cookie,
面试官:这小子我不信,问不倒他,既然说到登录网站那么
4请问你在地址栏输入www.****.com发送了什么
1:浏览器会根据你输入的 URL 地址,去查找域名是否被本地 DNS 缓存,不同浏览器对 DNS 的设置不同,如果浏览器缓存了你想访问的 URL 地址,那就直接返回 ip。如果没有缓存你的 URL 地址,浏览器就会发起系统调用来查询本机 hosts 文件是否有配置 ip 地址,如果找到,直接返回。如果找不到,就向网络中发起一个 DNS 查询。
2:查询方式是先:根域名服务器 -> 顶级域名服务器 -> 权威 DNS 服务器 查到之后告诉你目标Ip地址
3:浏览器与服务器建立TCP链接,
4:建立链接之后,浏览器发送http,GET请求 然后返回给你
面试官:这小伙子技术是真的可以,但我不甘心,于是乎终极一问
5:既然你说到浏览器与服务器建立TCP链接,那么 什么是TCP三次握手和四次挥手
TCP三次握手是建立链接:
通俗;
小明 - 客户端 小红 - 服务端
- 小明给小红打电话,接通了后,小明说喂,能听到吗,这就相当于是连接建立。
- 小红给小明回应,能听到,你能听到我说的话吗,这就相当于是请求响应。
- 小明听到小红的回应后,好的,这相当于是连接确认。在这之后小明和小红就可以通话/交换信息了。
图解:

面试官:小伙子你不错,恭喜你面试成功,下面让HR找你砍工资吧!
以上内容借鉴地址:
面试HTTP:https://www.cnblogs.com/cxuanBlog/p/12735623.html
TCP/IP的区别:https://www.cnblogs.com/xianlei/p/tcpip_http.html
深入浅出TCP/IP协议:https://www.cnblogs.com/onepixel/p/7092302.html
基础_TCP/IP的更多相关文章
- 计算机网络基础之IP地址详解
计算机网络基础之IP地址详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.IP地址概述 1>.什么是IP地址 我们为什么要使用逻辑地址(IP地址)来标识网络设备,而不采 ...
- 网络基础tcp/ip协议五
传输层的作用: ip层提供点到点的链接. 传输层提供端到端的链接. 传输层的协议: TCP: 传输控制协议可靠的,面向链接的协议,传输效率低. UDP: 用户数据报协议,不可靠,无连接的服务,传输效率 ...
- 《图解HTTP》读书笔记(一:网络基础TCP/IP)
好书什么时候开始读都不晚.作为一个测试人员,是一定要掌握一些网络的基础知识的.希望能够边读书边在这里记录笔记,便于加深理解以及日后查阅. 一.TCP/IP协议族 计算机与网络设备要互相通信,双方必须基 ...
- Day 6-1计算机网络基础&TCP/IP
按照功能不同,人们将互联网协议分为osi七层或tcp/ip五层或tcp/ip四层(我们只需要掌握tcp/ip五层协议即可) 每层运行常见物理设备: TCP/IP协议: Transmission Con ...
- 网络基础之IP地址和子网掩码
IP地址 IP是英文Internet Protocol的缩写,意思是"网络之间互连的协议",也就是为计算机网络相互连接进行通信而设计的协议.在因特网中,它是能使连接到网上的所有计算 ...
- 网络基础 TCP/IP
为了理解 HTTP,我们有必要事先了解一下 TCP/IP 协议族.通常使用的网络(包括互联网)是在 TCP/IP 协议族的基础上运作的.而 HTTP 属于它内部的一个子集.接下来,我们仅介绍理解 HT ...
- 加深理解HTTP请求---网络基础TCP/IP
为了了解HTTP,必须的了解TCP/IP协议族. 通常使用的网络实在TCP/IP协议族的基础上运作的.而HTTP就属于他的一个子集. 1.TCP/IP 协议族 计算机与网络设备要相互通信,双方就必须基 ...
- 网络基础之IP地址与子网划分
IP地址 Ipv4地址格式:点分十进制 IP地址的分类 A类 B类 C类: D类:组播 E类: 公共IP地址 私有IP地址 特殊地址 保留地址 子网掩码 什么是子网掩码 CIDR表示法 子网划分 为啥 ...
- 网络基础tcp/ip协议四
网络层的功能: 定义了基于ip协议的逻辑地址. 链接不同的媒介类型. 选择数据通过网络的最佳路劲. 数据包格式: 优先级与服务类型(8)位:优先级与服务类型 标识符,标志,段偏移量:这几个字用来对数据 ...
随机推荐
- Anaconda常用命令收藏----后期还会更新
一.更换jupyter notobook的打开目录 一般载在安装好Anaconda的时候,打开jupyter指向的目录一般是系统的根目录,如C:\Users\25282,但是这样的话对C盘是个不小的负 ...
- [ex-kmp] HDU 2019 Multi-University Training Contest 5-string matching
string matching Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others ...
- 在Keras中可视化LSTM
作者|Praneet Bomma 编译|VK 来源|https://towardsdatascience.com/visualising-lstm-activations-in-keras-b5020 ...
- 机器学习中的 7 大损失函数实战总结(附Python演练)
介绍 想象一下-你已经在给定的数据集上训练了机器学习模型,并准备好将它交付给客户.但是,你如何确定该模型能够提供最佳结果?是否有指标或技术可以帮助你快速评估数据集上的模型? 当然是有的,简而言之,机器 ...
- 《Flutter 动画系列》组合动画
老孟导读:在前面的文章中介绍了 <Flutter 动画系列>25种动画组件超全总结 http://laomengit.com/flutter/module/animated_1/ < ...
- jvm的类加载机制总结
类的加载机制分为如下三个阶段:加载,连接,初始化.其中连接又分为三个小阶段:验证,准备,解析. 加载阶段 将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后再堆内创 ...
- JMeter中聚合报告的各项参数详解
下面我们来共同学习这些参数的作用: 1.Lable:Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值: ...
- stm32:简单按键输入实现
开发环境keil4,芯片STM32F103C8T6 1.main.c //串口实验 #include "sys.h" #include "delay.h" #i ...
- 本地Vue项目跨域请求本地Node.js服务器的配置方法
前言:跨域请求是在本地开发时经常遇到的需求,也很简单,只是几句代码配置一下的问题.我初次配置跨域请求时由于官方的说明太简洁,找到的教程又落伍,调试了一番并没有解决问题,到最后解决问题,已花费了很多时间 ...
- Centos网络的配置
...