国产伦精品一区二区三区_欧美日韩国产高清视频_激情欧美亚洲_狠狠色丁香婷婷综合影院

win7系統下載
當前位置: 首頁 > 網絡技術教程 > 詳細頁面

運用WinSock2 SPI進行網絡內容訪問控制

發布時間:2022-05-03 文章來源:xp下載站 瀏覽:

網絡技術是從1990年代中期發展起來的新技術,它把互聯網上分散的資源融為有機整體,實現資源的全面共享和有機協作,使人們能夠透明地使用資源的整體能力并按需獲取信息。資源包括高性能計算機、存儲資源、數據資源、信息資源、知識資源、專家資源、大型數據庫、網絡、傳感器等。 當前的互聯網只限于信息共享,網絡則被認為是互聯網發展的第三階段。

防火墻可以實施和執行網絡訪問策略,但是,傳統的防火墻技術集中于如何防范外部網絡對內部網絡的入侵和攻擊上,而對于如何控制內部用戶對外部網絡的訪問問題研究不夠深入,相關的控制技術也不多。據權威資料顯示,全球現有大約25萬色情網站,單純依靠傳統的包過濾等防火墻技術,勢必會嚴重影響網絡性能。針對這一問題,我們從應用層網關技術入手,利用WinSock2 SPI技術,進行了研究和探討。 


Winsock2 SPI原理圖
Winsock2 SPI(Service Provider Interface)服務提供者接口建立在Windows開放系統架構WOSA(Windows Open System Architecture)之上,是Winsock系統組件提供的面向系統底層的編程接口。Winsock系統組件向上面向用戶應用程序提供一個標準的API接口;向下在Winsock組件和Winsock服務提供者(比如TCP/IP協議棧)之間提供一個標準的SPI接口。各種服務提供者是Windows支持的DLL,掛靠在Winsock2 的Ws2_32.dll模塊下。對用戶應用程序使用的Winsock2 API中定義的許多內部函數來說,這些服務提供者都提供了它們的對應的運作方式(例如API函數WSAConnect有相應的SPI函數WSPConnect)。多數情況下,一個應用程序在調用Winsock2 API函數時,Ws2_32.dll會調用相應的Winsock2 SPI函數,利用特定的服務提供者執行所請求的服務。

Winsock2 SPI允許開發兩類服務提供者——傳輸服務提供者和名字空間服務提供者。“傳輸提供者”(Transport Providers, 一般稱作協議堆棧,例如TCP/IP)能夠提供建立通信、傳輸數據、日常數據流控制和錯誤控制等傳輸功能方面的服務。“名字空間提供者”(Name Space Providers,例如DNS名字解析服務)則把一個的地址屬性和一個或多個用戶友好名稱關聯到一起,以便啟用與應用無關的名字解析方案。

Winsock2中使用的傳輸服務提供者有兩類:基礎服務提供者和分層服務提供者。基礎服務提供者執行網絡傳輸協議(比如TCP/IP)的具體細節,其中包括在網絡上收發數據之類的核心網絡協議功能。“分層式”(Layered)服務提供者只負責執行高級的自定義通信功能,并依靠下面的基礎服務提供者,在網絡上進行真正的數據交換。

為了進行內部用戶對外訪問控制,我們需要在現有的基礎提供者TCP/IP提供者上設立一個分層式的URL過濾管理者。通過URL過濾管理者我們可以截獲用戶請求的HTTP數據包中的URL地址,繼而可以通過高效的數據檢索算法(如利用Fibonacci散列函數的哈希表),在訪問規則庫(被禁止訪問的IP集合)中查找指定的IP,根據結果拒絕或提供訪問服務。

傳輸服務提供者的安裝方式決定了它不僅是一個分層提供者,還是一個基礎服務提供者。Winsock 2使用系統配置數據庫配置傳輸服務提供者。配置數據庫讓Winsock2得知服務提供者的存在,并定義了提供的服務類型。要在Winsock2服務提供者數據庫內成功安裝和管理服務提供者,需要四個函數:WSCEnumProtocols、WSCInstallProvider、WSCWriteProvider Order、WSCDeInstallProvider。這些函數利用WSAPROTOCOL_INFOW結構,對服務提供者數據庫進行查詢和操作。要安裝分層式服務提供者,需要建立兩個WSPPROTOCOL_INFOW目錄條目結構。一個代表分層提供者(協議鏈長度等于0),另一個將代表一個協議鏈(協議長度大于1),該協議鏈把分層提供者與一個基礎服務提供者鏈接起來。應該使用現有服務提供者的WSAPROTOCOL_INFOW目錄條目結構的屬性來初始化這兩個結構。調用WSCEnumProtocols可以獲得已有的服務提供者的WSAPROTOCOL_INFOW目錄條目結構。初始化之后,首先需要使用WSCInstallProvider來安裝我們的訪問控制分層服務提供者目錄條目,然后,利用WSCEnumProtocols列舉出所有的目錄條目,獲得安裝之后為這個結構分配的目錄ID。然后,用這個目錄條目來設置一個協議鏈目錄條目,通過它,將我們的訪問控制服務提供者和另一個提供者(TCP基礎提供者)鏈接起來。然后再次調用WSCInstallProvider來安裝我們的分層鏈式服務提供者。

在用WSCInstallProvider安裝一個服務提供者時,目錄條目自動成為配置數據庫中的最后一個條目。要實現訪問控制就必須使我們的URL過濾服務提供者成為默認的TCP/IP提供者,必須通過調用WSCWriteProviderOrder函數來完成此項工作,對數據庫中提供者目錄條目進行重新排序,并把協議鏈目錄條目放在TCP/IP基礎提供者之前。

Winsock2傳輸服務提供者隨標準的Windows動態鏈接庫模塊一起執行。我們必須在我們的服務提供者動態鏈接庫模塊中導入DLLMain函數,同時還必須導入一個名為WSPStartup的單一函數條目。我們的URL過濾服務提供者必須提供對WSPStartup函數和其他30個SPI函數的支持。調用WSAStartup期間,Winsock根據WSASocket調用的地址家族、套接字類型和協議參數,來決定需要加載哪個服務提供者。只有在一個應用程序通過socket或WSASocket API調用建立一個采用地址家族AF_INET、套接字類型為SOCK_STREAM的套接字時,Winsock才會搜索并加載與之相應的、能夠提供TCP/IP能力的傳輸服務提供者。WSPStartup的參數UpcallTable取得Ws2_32.dll的SPI函數派遣表,我們的訪問控制分層服務提供者利用這些函數來管理自身和Winsock2之間的I/O操作。

我們利用WSPConnect函數來實現訪問控制功能。在用戶請求HTTP服務時,需要首先建立與目標站點的連接,連接成功后,在此連接基礎上發送HTTP請求數據包。用戶應用程序調用connect或WSAConnect函數建立連接時,SPI會調用對應的WSPConnect函數:INT WSPAPI WSPConnect(...,const struct sockaddr FAR *name,...,INT FAR *lpErrno)。在sockaddr類型的參數name中包含了用戶將要訪問的目標站點的IP地址信息。我們將name參數傳遞到IP可訪問性判定例程IPFilter。如果IPFilter函數返回代表授權訪問的結果,我們采用協議鏈命令路由,調用下一層的基礎服務提供者(TCP/IP)來完成連接請求。如果IPFilter函數返回代表拒絕服務的結果,我們設置lpErrno參數為相應的錯誤碼,然后返回,不進行協議鏈下一層服務提供者的調用,從而實現訪問控制。

分層式服務提供者大大發揮了聯網服務的潛能,增強了Winsock的應用,在我們的URL過濾服務中發揮了巨大的作用,基本實現了對內部用戶訪問外部網絡的訪問控制,為用戶提供了對互聯網的健康性的訪問服務。

【相關文章】

  • 專題:訪問控制列表(ACL)介紹
  • 基于時間的訪問控制列表配置實例
  • 訪問控制列表概述


網絡的神奇作用吸引著越來越多的用戶加入其中,正因如此,網絡的承受能力也面臨著越來越嚴峻的考驗―從硬件上、軟件上、所用標準上......,各項技術都需要適時應勢,對應發展,這正是網絡迅速走向進步的催化劑。

本文章關鍵詞: ACL WinSock2 SPI 訪問 路由 
国产伦精品一区二区三区_欧美日韩国产高清视频_激情欧美亚洲_狠狠色丁香婷婷综合影院
国产一区二区三区久久精品| 性做久久久久久| 免费高清在线一区| 一区二区三区在线免费观看| 久久琪琪电影院| 久久精品综合一区| 亚洲日本aⅴ片在线观看香蕉| 亚洲电影激情视频网站| 免费看黄裸体一级大秀欧美| 最近中文字幕日韩精品| 亚洲三级电影全部在线观看高清 | 亚洲网站视频| 一区二区三区回区在观看免费视频| 欧美视频一区二区在线观看| 午夜伦欧美伦电影理论片| 欧美一级淫片播放口| 一区二区三区中文在线观看| 亚洲黄色成人| 国产欧美三级| 亚洲国产精品va在线观看黑人| 99精品欧美一区二区三区| 久久国产精品色婷婷| 久久免费精品视频| 99国产一区| 亚洲欧美网站| 亚洲精品欧美日韩专区| 一区二区三区视频在线看| 国产一区二区三区免费不卡 | 在线亚洲观看| 久久久久9999亚洲精品| 一区二区不卡在线视频 午夜欧美不卡'| 一区二区三区免费网站| 一区二区在线观看视频| 日韩视频永久免费| 1024精品一区二区三区| 亚洲视频中文| 亚洲精品在线免费| 久久精品30| 午夜亚洲一区| 欧美日韩精品在线| 欧美aa国产视频| 国产午夜精品理论片a级大结局| 亚洲欧洲免费视频| 黄色成人免费观看| 亚洲一区二区三区在线观看视频 | 一区二区免费在线视频| 久久久99国产精品免费| 午夜精品视频| 欧美精品系列| 欧美韩日高清| 黄色成人av在线| 久久不射网站| 久久精品综合一区| 国产精品看片资源| 一区二区三区久久网| 亚洲一二三区视频在线观看| 欧美电影美腿模特1979在线看 | 欧美一区二区三区免费大片| 欧美日韩裸体免费视频| 亚洲啪啪91| 亚洲精品在线观看免费| 欧美aⅴ一区二区三区视频| 欧美jizzhd精品欧美巨大免费| 国产一区清纯| 久久精彩免费视频| 免费不卡中文字幕视频| 狠狠色丁香婷婷综合| 欧美在线视频全部完| 久久久久国产成人精品亚洲午夜| 国产精品永久免费观看| 午夜国产不卡在线观看视频| 午夜精品久久久99热福利| 国产精品日韩欧美一区| 欧美一区91| 久久综合久久久| 亚洲国内精品| 欧美视频手机在线| 亚洲一区二区精品在线| 久久精品日韩欧美| 伊人久久婷婷色综合98网| 亚洲精品免费在线| 一区二区三区鲁丝不卡| 欧美一区中文字幕| 久久综合中文字幕| 国产精品午夜久久| 一区二区三区四区蜜桃| 久久久人人人| 久久亚洲不卡| 欧美二区在线播放| 老巨人导航500精品| 麻豆成人精品| 日韩视频欧美视频| 亚洲欧美日韩综合一区| 国产日韩一区在线| 麻豆精品在线观看| 一卡二卡3卡四卡高清精品视频| 一区二区三区日韩欧美精品| 欧美日韩小视频| 欧美亚洲综合在线| 欧美成人中文字幕| 亚洲一级影院| 狠狠爱成人网| 欧美日韩精品一区二区三区| 亚洲一区二区三| 欧美激情一二区| 亚洲制服丝袜在线| 激情偷拍久久| 欧美高清一区| 久久国产精品一区二区三区四区| 欧美激情视频在线播放| 欧美在线资源| 日韩视频在线一区二区三区| 国产一区二区三区久久悠悠色av| 欧美91精品| 性色av一区二区怡红| 亚洲国产三级| 久久久久久亚洲精品杨幂换脸 | 亚洲作爱视频| 国产自产2019最新不卡| 欧美日韩一区二区三区四区五区| 久久国产婷婷国产香蕉| 在线一区视频| 91久久在线| 欧美高清自拍一区| 久久久久高清| 欧美一级大片在线观看| 一本久道综合久久精品| 亚洲国产精品999| 国产一二精品视频| 国产精品草草| 欧美日韩在线不卡一区| 欧美精品在线播放| 免费观看日韩| 麻豆精品在线观看| 美女主播视频一区| 久久成人亚洲| 欧美在线网址| 亚洲一区在线免费观看| 亚洲九九爱视频| 亚洲激情视频网| 亚洲国产女人aaa毛片在线| 久久婷婷国产综合尤物精品| 午夜在线一区| 欧美一区二区三区久久精品| 亚洲午夜性刺激影院| 亚洲免费人成在线视频观看| 午夜精品久久久久| 一区二区三区免费在线观看| 亚洲欧洲精品天堂一级 | 亚洲一区二区三区中文字幕| 99精品视频免费观看| 亚洲精品在线看| 亚洲日本一区二区三区| 欧美大片在线看免费观看| 欧美国产日韩一区二区在线观看| 免费在线播放第一区高清av| 欧美激情精品久久久久久| 亚洲国产一区在线| 夜夜嗨一区二区| 亚洲影院污污.| 欧美在线观看视频在线| 久久免费99精品久久久久久| 你懂的亚洲视频| 欧美日韩在线一二三| 国产精品亚洲综合一区在线观看 | 国产精品久久国产三级国电话系列| 欧美天堂亚洲电影院在线观看 | 欧美日韩一卡二卡| 国产欧美欧美| …久久精品99久久香蕉国产 | 国产日韩视频一区二区三区| 激情自拍一区| 日韩视频精品在线| 欧美一区二区免费视频| 免费在线亚洲欧美| 在线视频日韩| 久久午夜电影| 国产精品福利在线观看网址| 国产一区二区久久久| 亚洲人成在线影院| 小处雏高清一区二区三区| 免费高清在线一区| 一区二区三区视频在线看| 欧美在线免费视频| 欧美人与性动交a欧美精品| 国产区亚洲区欧美区| 亚洲老司机av| 久久夜色精品一区| 一区二区三区精品视频| 久久亚洲精品一区| 国产精品免费网站在线观看| 亚洲国产三级网| 欧美在线999| 日韩视频中午一区| 久久久噜噜噜| 国产日韩欧美日韩大片| 一区二区高清视频在线观看| 久久亚洲一区| 亚洲一区在线免费观看| 欧美激情在线观看|