深圳南财多媒体有限公司介绍

您當前的位置 :環(huán)球傳媒網>資訊 > 正文
socket()套接字有哪些?為什么網頁打開很慢?-全球觀點
2022-11-21 10:22:22 來源:環(huán)球傳媒網 編輯:

提起為什么網頁打開很慢(網絡加載慢怎么辦)大家在熟悉不過了,被越來越多的人所熟知,那你知道為什么網頁打開很慢(網絡加載慢怎么辦)嗎?快和小編一起去了解一下吧!

在計算機網絡的應用層你了解多少,是否知道socket套接字有哪些?知道你的網站為什么訪問慢嗎?知道為什么fidder、Charles能抓到你的包嗎?今天我們就來一一揭秘!


(資料圖片僅供參考)

一、socket()套接字有哪些?

套接字(socket)是網絡中不同主機上的應用進程進行雙向通信的端口的抽象,網絡進程通信的一端就是一個套接字,不同主機上的進程就是通過套接字發(fā)送數據報來進行通信的,如TCP協議使用主機的IP地址 端口號來作為TCP連接的端點,這個端點就是套接字。

套接字主要有以下三種類型:

流套接字(SOCK_STREAM): 流套接字基于TCP傳輸協議, 主要用于面向連接的、可靠的數據傳輸服務,由于TCP協議的特點,使用流套接字進行通信時能夠保證數據無差錯、無重復傳送、并按順序接收,通信雙方不需要在程序中進行相應的處理。數據報套接字(SOCK_DGRAM): 因為UDP協議傳輸的是數據報,所以數據報套接字是基于UDP傳輸協議的,對應于無連接的UDP服務應用,該服務并不能保證數據傳輸的可靠性, 也無法保證數據按照順序到達, 同時通信兩端不需要建立長時間的連接,UDP客戶端發(fā)送一個數據給服務器后,就可以使用同一個套接字給另一個服務器發(fā)送數據, 當使用UDP套接字時,丟包等問題需要在程序中進行處理。原始套接字(SOCK_RAW): 由于流套接字和數據報套接字只能抓取TCP和UDP協議的數據,當需要處理非傳輸層數據包或操作系統(tǒng)無法處理的數據包時,就需要使用原始套接字來發(fā)送。二、URI(統(tǒng)一資源標識符)和URL(統(tǒng)一資源定位符)之間的區(qū)別?URL(統(tǒng)一資源定位符) 也可以說是我們平常上網時輸入的網址,它標識一個互聯網資源,并且指定其進行操作或獲取該資源的方法,例如CSDN的網址https://blog.csdn.net,該URL標識一個特定資源并表示該資源的某種形式可以通過HTTPS協議從相應的位置獲取。URL是URI的子集, 兩者都定義了資源是什么?而URL還定義了如何能夠訪問到資源,URI是一種語義上的抽象概念,可以是絕對的也可以是相對的。而URL則必須提供足夠的信息來定位,是絕對的,

所以總的來說,只要能唯一標識資源的就是URI,在URI的基礎上能給出其資源的訪問方式的就是URL。

三、為什么 fidder,charles 能抓到你的包【抓取數據包的過程】

假如我們需要抓取客戶端的數據包,需要監(jiān)控客戶端與服務器交互之間的網絡節(jié)點,監(jiān)控其中任意一個網絡節(jié)點(網卡),獲取所有經過網卡中的數據,對這些數據按照網絡協議進行解析,這就是抓包的基本原理。 而中間的網絡節(jié)點不受我們控制,是基本無法實現抓包的,因此只能在客戶端與服務器之間進行抓包。

① 當采用抓包工具抓取 HTTP 數據包時,過程如下:

首先抓包工具會提出代理服務,客戶端需要連接該代理;客戶端發(fā)出 HTTP 請求時,會經過抓包工具的代理,抓包工具將請求的原文進行展示;抓包工具使用該原文將請求發(fā)送給服務器;服務器返回結果給抓包工具,抓包工具將返回結果進行展示;抓包工具將服務器返回的結果原樣返回給客戶端。

這里抓包工具相當于透明人,數據經過的時候它一只手接到數據,然后另一只手把數據傳出去。

② 當抓取 HTTPS 數據包時:

客戶端連接抓包工具提供的代理服務,并安裝抓包工具的根證書;客戶端發(fā)出 HTTPS 請求,抓包工具模擬服務器與客戶端進行 TLS握手交換密鑰等流程;抓包工具發(fā)送一個 HTTPS 請求給客戶端請求的目標服務器,并與目標服務器進行 TLS 握手交換密鑰等流程;客戶端使用與抓包工具協定好的密鑰加密數據后發(fā)送給抓包工具;抓包工具使用與客戶端協定好的密鑰解密數據,并將結果進行展示;抓包工具將解密后的客戶端數據,使用與服務器協定好的密鑰進行加密后發(fā)送給目標服務器;服務器解密數據后,做對應的邏輯處理,然后將返回結果使用與抓包工具協定好的密鑰進行加密發(fā)送給抓包工具;抓包工具將服務器返回的結果,用與服務器協定好的密鑰解密,并將結果進行展示;抓包工具將解密后的服務器返回數據,使用與客戶端協定好的密鑰進行加密后發(fā)送給客戶端;客戶端解密數據。

這個時候抓包工具對客戶端來說相當于服務器,對服務器來說相當于客戶端。 在這個傳輸過程中,客戶端會以為它就是目標服務器,服務器也會以為它就是請求發(fā)起的客戶端。

四、如果你訪問一個網站很慢,怎么排查和解決?

網站打開慢的原因有很多,總結一下最常見的幾個。

查看本地網絡是否正常,查看網絡帶寬是否被占用,如有其他進程正在占用本地網絡帶寬。若網絡連接正常,那么就應該對該網站的服務器速度進行排查,通過ping命令查看連接到服務器的時間和丟包情況,如果服務器正常,那么丟包率一般不會超過1%, 其次是ping值要小,最后是ping值要穩(wěn)定,如果ping值的最大和最小差值過大說明路由不穩(wěn)定。 或者我們查看打開同臺服務器上的其他網站的速度,看打開其他網站的速度是否也慢。如果網站打開速度時快時慢,甚至有時候打不開的情況,那么有可能是空間不穩(wěn)定,如果確定了是該問題,那么就應該找你的空間商更換空間了,可以選擇購買雙線或多線空間。從網站本身尋找原因,網站的問題主要包括網站程序設計、網頁結構設計和網頁內容三部分。

1、網站程序設計: 當訪問網頁中有拖慢網站打開速度的代碼,會直接影響網站的打開速度,如網頁中使用的統(tǒng)計代碼,一般是要放置在網站末尾的,防止其在加載過程中出現延遲。

2、網頁結構設計: 查看網頁布局的代碼,如果網頁使用的table布局的網頁,查看是否被嵌套次數過多,或者是使用一個大表格分成多個小表格的布局,這個時候可以使用div配合css來改進。

3、網頁內容: 查看網頁中是否有許多大尺寸的圖片和大尺寸的flash存在,我們可以通過降低圖片質量,減少圖片尺寸,少用過多的flash來解決。或者可能是有的網站引用了其他網站的內容, 若某些被引用的網站訪問速度慢或者不存在,該網站的打開速度自然會變慢,所以可以直接減少不必要的加載項。

五、說一下網頁解析的全過程【用戶輸入網址到顯示對應頁面的全過程】

在用戶輸入URL之后,瀏覽器首先會進行DNS解析,將用戶輸入的域名解析成web服務器的IP地址,之后會通過該IP地址與服務器進行三次握手建立TCP連接,連接完成之后通過HTTP協議發(fā)送客戶端的請求,在服務器接收到該請求之后,會根據該請求體中的內容決定如何獲取目標文件,并且將目標文件返回給客戶端;瀏覽器在收到文件之后,首先會通過解析HTML文件為DOM樹,再解析CSS文件為渲染樹,在CSS文件解析完成之后將根據渲染樹的布局在頁面上顯示網頁;最后客戶端和服務器通過四次揮手斷開連接。

過程如下圖這樣:

其中的名詞解析:

DNS 解析: 當用戶輸入一個網址并按下回車鍵的時候,瀏覽器獲得一個域名,而在實際通信過程中,我們需要的是一個 IP地址,因此我們需要先把域名轉換成相應 IP 地址。TCP 連接: 瀏覽器通過 DNS 獲取到 Web 服務器真正的 IP 地址后,便向 Web 服務器發(fā)起 TCP 連接請求,通過 TCP三次握手建立好連接后,瀏覽器便可以將 HTTP 請求數據發(fā)送給服務器了。發(fā)送 HTTP 請求: 瀏覽器向 Web 服務器發(fā)起一個 HTTP 請求,HTTP 協議是建立在 TCP 協議之上的應用層協議,其本質是在建立起的TCP連接中,按照HTTP協議標準發(fā)送一個索要網頁的請求。

在這一過程中,會涉及到負載均衡等操作。

拓展:什么是負載均衡?

負載均衡, 英文名為 Load Balance,其含義是指將負載(工作任務)進行平衡、分攤到多個操作單元上進行運行, 例如 FTP 服務器、Web 服務器、企業(yè)核心服務器和其他主要任務服務器等,從而協同完成工作任務。

負載均衡建立在現有的網絡之上,它提供了一種透明且廉價有效的方法擴展服務器和網絡設備的帶寬、增加吞吐量、加強網絡處理能力并提高網絡的靈活性和可用性。

負載均衡是分布式系統(tǒng)架構設計中必須考慮的因素之一, 例如天貓、京東等大型用戶網站中為了處理海量用戶發(fā)起的請求,其往往采用分布式服務器,并通過引入反向代理等方式將用戶請求均勻分發(fā)到每個服務器上,而這一過程所實現的就是負載均衡。

處理請求并返回: 服務器獲取到客戶端的 HTTP 請求后,會根據 HTTP 請求中的內容來決定如何獲取相應的文件,并將文件發(fā)送給瀏覽器。瀏覽器渲染: 瀏覽器根據響應開始顯示頁面,首先解析 HTML 文件構建 DOM 樹,然后解析 CSS文件構建渲染樹,等到渲染樹構建完成后,瀏覽器開始布局渲染樹并將其繪制到屏幕上。斷開連接: 客戶端和服務器通過四次揮手終止 TCP 連接。今日總結

今天的內容主要就是學習了網站的請求和顯示過程,了解其中通信的原理,URL和URI的區(qū)別、如何解決網站訪問慢等問題。

如果小伙伴們有遇到其他相關的面試題,歡迎在評論區(qū)留言提出,我會把大家提出的總結到文章內, 歡迎小伙伴們一起評論區(qū)打卡學習!

關鍵詞:

相關閱讀
分享到:
版權和免責申明

凡注有"環(huán)球傳媒網"或電頭為"環(huán)球傳媒網"的稿件,均為環(huán)球傳媒網獨家版權所有,未經許可不得轉載或鏡像;授權轉載必須注明來源為"環(huán)球傳媒網",并保留"環(huán)球傳媒網"的電頭。

Copyright ? 1999-2017 cqtimes.cn All Rights Reserved 環(huán)球傳媒網-重新發(fā)現生活版權所有 聯系郵箱:8553 591@qq.com
主站蜘蛛池模板: 辽宁资质代办_辽宁建筑资质办理_辽宁建筑资质延期升级_辽宁中杭资质代办 | SDI车窗夹力测试仪-KEMKRAFT方向盘测试仪-上海爱泽工业设备有限公司 | 高低温老化试验机-步入式/低温恒温恒湿试验机-百科 | 烟台游艇培训,威海游艇培训-烟台市邮轮游艇行业协会 | 变位机,焊接变位机,焊接变位器,小型变位机,小型焊接变位机-济南上弘机电设备有限公司 | 电伴热系统施工_仪表电伴热保温箱厂家_沃安电伴热管缆工业技术(济南)有限公司 | 防爆电机生产厂家,YBK3电动机,YBX3系列防爆电机,YBX4节防爆电机--河南省南洋防爆电机有限公司 | 空气能采暖,热泵烘干机,空气源热水机组|设备|厂家,东莞高温热泵_正旭新能源 | 专注氟塑料泵_衬氟泵_磁力泵_卧龙泵阀_化工泵专业品牌 - 梭川泵阀 | 无锡市珂妮日用化妆品有限公司|珂妮日化官网|洗手液厂家 | 电销卡_北京电销卡_包月电话卡-豪付网络| 网站建设,北京网站建设,北京网站建设公司,网站系统开发,北京网站制作公司,响应式网站,做网站公司,海淀做网站,朝阳做网站,昌平做网站,建站公司 | 温湿度记录纸_圆盘_横河记录纸|霍尼韦尔记录仪-广州汤米斯机电设备有限公司 | 大功率金属激光焊接机价格_不锈钢汽车配件|光纤自动激光焊接机设备-东莞市正信激光科技有限公司 定制奶茶纸杯_定制豆浆杯_广东纸杯厂_[绿保佳]一家专业生产纸杯碗的厂家 | 运动木地板厂家_体育木地板安装_篮球木地板选购_实木运动地板价格 | 中国品牌门窗网_中国十大门窗品牌_著名门窗品牌 | 海南在线 海南一家| 定硫仪,量热仪,工业分析仪,马弗炉,煤炭化验设备厂家,煤质化验仪器,焦炭化验设备鹤壁大德煤质工业分析仪,氟氯测定仪 | 北京软件开发_软件开发公司_北京软件公司-北京宜天信达软件开发公司 | 西门子代理商_西门子变频器总代理-翰粤百科 | 上海租奔驰_上海租商务车_上海租车网-矢昂汽车服务公司 | 北京翻译公司_同传翻译_字幕翻译_合同翻译_英语陪同翻译_影视翻译_翻译盖章-译铭信息 | 恒湿机_除湿加湿一体机_恒湿净化消毒一体机厂家-杭州英腾电器有限公司 | 武汉EPS线条_EPS装饰线条_EPS构件_湖北博欧EPS线条厂家 | 【法利莱住人集装箱厂家】—活动集装箱房,集装箱租赁_大品牌,更放心 | 土壤肥料养分速测仪_测土配方施肥仪_土壤养分检测仪-杭州鸣辉科技有限公司 | 郑州水质检测中心_井水检测_河南废气检测_河南中环嘉创检测 | 过滤器_自清洗过滤器_气体过滤器_苏州华凯过滤技术有限公司 | 长沙中央空调维修,中央空调清洗维保,空气能热水工程,价格,公司就找维小保-湖南维小保环保科技有限公司 | EDLC超级法拉电容器_LIC锂离子超级电容_超级电容模组_软包单体电容电池_轴向薄膜电力电容器_深圳佳名兴电容有限公司_JMX专注中高端品牌电容生产厂家 | 铁艺,仿竹,竹节,护栏,围栏,篱笆,栅栏,栏杆,护栏网,网围栏,厂家 - 河北稳重金属丝网制品有限公司 山东太阳能路灯厂家-庭院灯生产厂家-济南晟启灯饰有限公司 | 集装箱标准养护室-集装箱移动式养护室-广州璟业试验仪器有限公司 | POS机办理_个人pos机免费领取-银联pos机申请首页| 压滤机-洗沙泥浆处理-压泥机-山东创新华一环境工程有限公司 | 南京种植牙医院【官方挂号】_南京治疗种植牙医院那个好_南京看种植牙哪里好_南京茀莱堡口腔医院 尼龙PA610树脂,尼龙PA612树脂,尼龙PA1010树脂,透明尼龙-谷骐科技【官网】 | 扬子叉车厂家_升降平台_电动搬运车|堆高车-扬子仓储叉车官网 | 无轨电动平车_轨道平车_蓄电池电动平车★尽在新乡百特智能转运设备有限公司 | 防爆型气象站_农业气象站_校园气象站_农业四情监测系统「山东万象环境科技有限公司」 | 昆明网络公司|云南网络公司|昆明网站建设公司|昆明网页设计|云南网站制作|新媒体运营公司|APP开发|小程序研发|尽在昆明奥远科技有限公司 | 杭州货架订做_组合货架公司_货位式货架_贯通式_重型仓储_工厂货架_货架销售厂家_杭州永诚货架有限公司 | 广州办公室设计,办公室装修,写字楼设计,办公室装修公司_德科 |