精品蜜桃一区二区三区_精品国产一区二区三_久久久久免费_欧美日韩免费在线

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 訪問 路由 
精品蜜桃一区二区三区_精品国产一区二区三_久久久久免费_欧美日韩免费在线
国内成人在线| 久久人人97超碰人人澡爱香蕉| 蜜桃久久久久久| 亚洲国产精品麻豆| 亚洲成av人片观看| 丝袜诱惑制服诱惑色一区在线观看| 最近中文字幕一区二区三区| ...中文天堂在线一区| 中文字幕色av一区二区三区| 亚洲色欲色欲www| 亚洲精品国产高清久久伦理二区| 亚洲三级小视频| 亚洲精品成人在线| 日韩综合在线视频| 国产综合一区二区| 国产aⅴ综合色| 欧美韩日精品| 黄色成人精品网站| 男人的天堂成人在线| 91行情网站电视在线观看高清版| 欧美视频中文字幕| 欧美成人一级视频| 中文字幕成人av| 亚洲愉拍自拍另类高清精品| 美国三级日本三级久久99| 精品一区二区三区不卡| 成人av电影在线网| 亚洲一级二级| 在线观看91视频| 精品毛片乱码1区2区3区| 国产精品免费丝袜| 午夜视频在线观看一区二区| 国产一区二区电影| 亚洲成人原创| 欧美视频精品在线| 国产亚洲综合在线| 日韩有码一区二区三区| 不卡的av电影在线观看| 国产欧美综合一区二区三区| 欧美日韩精品二区第二页| 久久久美女艺术照精彩视频福利播放| 最近中文字幕一区二区三区| 激情五月婷婷综合| 欧美日韩精品免费观看视一区二区 | 成人av网址在线| 在线一区日本视频| 91麻豆精品国产91久久久使用方法 | 久久精品一区四区| 亚洲国产你懂的| av亚洲精华国产精华| 久久av免费一区| 欧美精品一区二区三区视频| 亚洲一二三四区| 91在线精品秘密一区二区| 久久青草久久| 国产精品电影院| 国产精品影视网| 免费看黄裸体一级大秀欧美| 国产亚洲午夜高清国产拍精品| 肉肉av福利一精品导航| 午夜精品短视频| 337p亚洲精品色噜噜| 亚洲一区在线观看免费| 91在线视频免费观看| 欧美色男人天堂| 亚洲在线一区二区三区| 欧美成人免费在线| 这里是久久伊人| 午夜精品影院在线观看| 精品av久久久久电影| 精品久久久久久久久久久久包黑料 | 一卡二卡欧美日韩| 欧美日韩精品伦理作品在线免费观看 | 欧美色图片你懂的| 亚洲国产欧美在线人成| 欧美三区美女| 久久青草欧美一区二区三区| 狠狠色综合播放一区二区| 午夜亚洲激情| 亚洲色图视频网| 欧美久久视频| 久久久亚洲高清| 成人一区在线看| 欧美精品乱人伦久久久久久| 午夜精品福利一区二区三区av| 91久久综合| 国产精品久久久久婷婷| 99久久精品一区二区| 日韩一级片网址| 国产一区二区三区香蕉| 欧美三级电影在线观看| 日韩国产精品久久久| 欧美亚洲免费| 亚洲bdsm女犯bdsm网站| 国产亚洲一区在线| 亚洲精品一二三四区| 亚洲国产精选| 伊人婷婷欧美激情| 国产日韩欧美精品| 亚洲高清免费在线| 麻豆av一区二区三区| 亚洲最新在线观看| 久久在线91| 看国产成人h片视频| 在线成人小视频| 成人免费视频网站在线观看| 日韩欧美一区二区久久婷婷| 粗大黑人巨茎大战欧美成人| 精品欧美一区二区久久| 97久久精品人人澡人人爽| 2017欧美狠狠色| 国产精品扒开腿做爽爽爽软件| 国产精品久久久久天堂| 亚洲黄色影片| 午夜伦欧美伦电影理论片| 狼狼综合久久久久综合网| 日本女优在线视频一区二区| 欧美日韩中文字幕精品| 大陆成人av片| 成人欧美一区二区三区白人| 9色精品在线| 美女网站色91| 337p日本欧洲亚洲大胆精品 | 日韩午夜激情电影| gogogo免费视频观看亚洲一| 国产精品拍天天在线| 一区二区三区国产在线| 日韩精品乱码av一区二区| 欧美福利电影网| 欧美激情1区| 亚洲一区二区三区在线| 欧美日韩国产欧美日美国产精品| k8久久久一区二区三区| 亚洲精品国产无套在线观| 在线观看视频一区| 波多野结衣中文字幕一区二区三区 | 日韩一区二区影院| 亚洲成人在线| 国产在线播放一区二区三区| 久久久久国产精品人| 国产精品毛片| 成人一区在线看| 亚洲综合色网站| 日韩亚洲国产中文字幕欧美| 伊人久久大香线蕉av超碰演员| 另类小说一区二区三区| 国产三级欧美三级| 色一情一乱一乱一91av| 99精品热视频| 日韩高清不卡一区二区三区| 久久日一线二线三线suv| 久久久精品午夜少妇| 99精品视频在线观看| 日韩精品免费视频人成| 日本一区二区高清| 欧美日韩视频专区在线播放| 亚洲大黄网站| 国产成a人无v码亚洲福利| 亚洲自拍偷拍综合| 久久奇米777| 欧美日韩一本到| 国产一区二区高清不卡| 成人avav在线| 极品销魂美女一区二区三区| 日韩毛片精品高清免费| 日韩欧美在线影院| 欧美最猛性xxxxx直播| 亚洲先锋成人| 99久久99久久综合| 激情五月婷婷综合| 丝袜诱惑制服诱惑色一区在线观看| 国产精品婷婷午夜在线观看| 欧美放荡的少妇| 色呦呦国产精品| 国产日韩一区二区| 亚洲无线视频| 91香蕉视频在线| 国产成人av电影在线| 日本不卡一二三| 亚洲午夜精品在线| 国产欧美日韩激情| 久久久九九九九| 日韩女优av电影在线观看| 欧美影院精品一区| 欧美亚洲网站| 在线视频亚洲| 亚洲每日更新| 精品999网站| 激情亚洲网站| 国产综合亚洲精品一区二| 91蜜桃婷婷狠狠久久综合9色| 国产精品18久久久久久久久| 精品在线观看免费| 麻豆成人久久精品二区三区小说| 午夜天堂影视香蕉久久| 午夜日韩在线观看| 五月婷婷综合在线| 日韩精品视频网站| 久色婷婷小香蕉久久| 精品一区二区精品|