JP6816275B2 - ドメイン名解析方法、サーバー及び記憶媒体 - Google Patents
ドメイン名解析方法、サーバー及び記憶媒体 Download PDFInfo
- Publication number
- JP6816275B2 JP6816275B2 JP2019524972A JP2019524972A JP6816275B2 JP 6816275 B2 JP6816275 B2 JP 6816275B2 JP 2019524972 A JP2019524972 A JP 2019524972A JP 2019524972 A JP2019524972 A JP 2019524972A JP 6816275 B2 JP6816275 B2 JP 6816275B2
- Authority
- JP
- Japan
- Prior art keywords
- domain name
- data
- name analysis
- packet
- request packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004458 analytical method Methods 0.000 title claims description 628
- 230000004044 response Effects 0.000 claims description 253
- 238000000034 method Methods 0.000 claims description 73
- 238000012937 correction Methods 0.000 claims description 17
- 230000003993 interaction Effects 0.000 claims description 15
- 238000004806 packaging method and process Methods 0.000 claims description 9
- 239000000284 extract Substances 0.000 claims description 7
- 230000000644 propagated effect Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 description 54
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 8
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 4
- 238000003672 processing method Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2546—Arrangements for avoiding unnecessary translation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2521—Translation architectures other than single NAT servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/58—Caching of addresses or names
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/622—Layer-2 addresses, e.g. medium access control [MAC] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本出願は、2017年01月11日に中国特許庁に提出された、出願番号が「2017100211114」であって、出願の名称が「ドメイン名解析方法及び装置」である中国特許出願に基づく優先権を主張するものであり、その全内容を本出願に参照により援用する。
<技術分野>
<背景技術>
サーバーが、ドメイン名解析要求パケットを取得することと、
前記サーバーが、取得した前記ドメイン名解析要求パケットを第1のキャッシュ領域にキャッシュすることと、
前記サーバーが、前記第1のキャッシュ領域において、キャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することと、
前記サーバーが、キャッシュされた前記ドメイン名解析要求パケットによって解析が要求されたドメイン名及び要求されたレコードタイプを抽出することと、
前記サーバーが、第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することと、
前記サーバーが、検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することと、を含む。
ドメイン名解析要求パケットを取得することと、
取得した前記ドメイン名解析要求パケットを第1のキャッシュ領域にキャッシュすることと、
前記第1のキャッシュ領域において、キャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することと、
キャッシュされた前記ドメイン名解析要求パケットによって解析が要求されたドメイン名及び要求されたレコードタイプを抽出することと、
第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ、抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することと、
検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することと、を実行させる。
ドメイン名解析要求パケットを取得することと、
取得した前記ドメイン名解析要求パケットを第1のキャッシュ領域にキャッシュすることと、
前記第1のキャッシュ領域において、キャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することと、
キャッシュされた前記ドメイン名解析要求パケットによって解析が要求されたドメイン名及び要求されたレコードタイプを抽出することと、
第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ、抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することと、
検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することと、
を実行させる。
S402、オペレーティングシステムカーネルが、ネットワークカード受信キューからデータパケットを読み取ってユーザー空間に伝達するときに、選択された解析スレッドによって、伝達されたデータパケットに含まれるデータプロトコル識別子を取得することを含む。
Claims (24)
- ドメイン名解析方法であって、
サーバーが、ドメイン名解析要求パケットを取得することと、
前記サーバーが、取得した前記ドメイン名解析要求パケットを第1のキャッシュ領域にキャッシュすることと、
前記サーバーが、前記第1のキャッシュ領域において、キャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することと、
前記サーバーが、キャッシュされた前記ドメイン名解析要求パケットによって解析が要求されたドメイン名及び要求されたレコードタイプを抽出することと、
前記サーバーが、第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することと、
前記サーバーが、検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することと、
を含むことを特徴とする方法。 - 前記第1のキャッシュ領域及び前記第2のキャッシュ領域は、ユーザー空間にあり、前記サーバーが、ドメイン名解析要求パケットを取得することは、
オペレーティングシステムカーネルがネットワークカード受信キューからデータパケットを読み取ってユーザー空間に伝達するときに、前記サーバーが、伝達される前記データパケットに含まれるデータプロトコル識別子を取得することと、
前記データプロトコル識別子が、伝達される前記データパケットがドメイン名解析要求パケットであることを示すときに、前記サーバーが、前記ドメイン名解析要求パケットを取得することと、
を含むことを特徴とする請求項1に記載の方法。 - 前記サーバーが、並行する解析スレッドからアイドル状態にある解析スレッドを選択することと、
前記サーバーが、選択された前記解析スレッドによって、前記したドメイン名解析要求パケットを取得することと、前記した取得した前記ドメイン名解析要求パケットを第1のキャッシュ領域にキャッシュすることと、前記した前記第1のキャッシュ領域において、キャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することと、前記したキャッシュされた前記ドメイン名解析要求パケットによって解析が要求されたドメイン名及び要求されたレコードタイプを抽出することと、前記した第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することと、前記した検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することとを実行することと、
をさらに含むことを特徴とする請求項1に記載の方法。 - 前記サーバーの第1のキャッシュ領域と前記第2のキャッシュ領域は、ユーザー空間にあり、前記した選択された前記解析スレッドによって前記したドメイン名解析要求パケットを取得することを実行することは、
オペレーティングシステムカーネルがネットワークカード受信キューからデータパケットを読み取ってユーザー空間に伝達するときに、前記サーバーが、選択された前記解析スレッドによって、伝達される前記データパケットに含まれるデータプロトコル識別子を取得することと、
前記データプロトコル識別子が、伝達される前記データパケットが非ドメイン名解析要求パケットであることを示すときに、前記サーバーが、選択された前記解析スレッドによって、伝達される前記データパケットのアドレスポインタを前記ユーザー空間における第3のキャッシュ領域にキャッシュすることと、
前記サーバーが、並行する解析スレッドとは独立したカーネルインタラクションスレッドによって、前記第3のキャッシュ領域からデータパケットを読み取って、読み取ったデータパケットを前記オペレーティングシステムカーネルにフィードバックして応答することと、
を含むことを特徴とする請求項3に記載の方法。 - 前記サーバーが、前記第1のキャッシュ領域において、キャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することは、
前記サーバーが、前記第1のキャッシュ領域においてキャッシュされた前記ドメイン名解析要求パケットの先頭アドレスポインタを確定することと、
前記サーバーが、前記第1のキャッシュ領域においてキャッシュされた前記ドメイン名解析要求パケットのうち修正待ちデータのアドレスポインタオフセットを確定し、前記修正待ちデータは、前記ドメイン名解析要求パケットとそれに対応するドメイン名解析応答パケットとのそれぞれのヘッダデータ間の差分データであることと、
前記サーバーが、前記先頭アドレスポインタと前記アドレスポインタオフセットに基づき、前記第1のキャッシュ領域において前記修正待ちデータを位置決めすることと、
前記サーバーが、位置決めされた前記修正待ちデータを前記ドメイン名解析応答パケットのうち前記修正待ちデータに対応するデータに修正することと、
を含むことを特徴とする請求項1に記載の方法。 - 前記応答データは、予め設定された応答フォーマットに従ってドメイン名解析レコードをパッケージングすることによって得られ、
前記方法は、
現在の時間が前記応答データに含まれるキャッシュ期限を超えると、前記サーバーが前記ドメイン名解析レコードを更新することと、
前記サーバーが予め設定された応答フォーマットに従って、更新された前記ドメイン名解析レコードを更新された応答データにパッケージングすることと、
前記サーバーが、前記第2のキャッシュ領域においてプリキャッシュされた前記応答データを前記更新された応答データに置き換えることと、
をさらに含むことを特徴とする請求項1に記載の方法。 - 前記サーバーが、第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することは、
前記サーバーが、抽出された前記ドメイン名によってマッピングされたハッシュ値を取得することと、
前記サーバーが、ハッシュテーブルにおいて前記ハッシュ値が指向するリンクリストを確定することと、
前記サーバーが、前記リンクリストにおいて、抽出された前記ドメイン名を含み且つ抽出された前記レコードタイプに対応するノードを検索することと、
前記サーバーが、検索された前記ノードから応答データのキャッシュアドレスを抽出することと、
前記サーバーが、前記キャッシュアドレスに基づき、前記第2のキャッシュ領域から対応するプリキャッシュされた応答データを読み取ることと、
を含むことを特徴とする請求項1に記載の方法。 - 前記サーバーが、検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することは、
前記サーバーが、前記第1のキャッシュ領域における修正後の前記ドメイン名解析要求パケットの先頭アドレスポインタを取得することと、
前記サーバーが、修正後の前記ドメイン名解析要求パケットのデータの総量に対応するアドレスポインタオフセットを取得することと、
前記サーバーが、修正後の前記ドメイン名解析要求パケットの先頭アドレスポインタと前記アドレスポインタオフセットに基づき、前記応答データの先頭アドレスポインタを確定することと、
前記サーバーが、前記応答データの先頭アドレスポインタに基づき、前記応答データを前記第1のキャッシュ領域にキャッシュして、前記第1のキャッシュ領域にキャッシュされ、且つ修正後の前記ドメイン名解析要求パケットとキャッシュされた前記応答データを含むドメイン名解析応答パケットを取得することと、
を含むことを特徴とする請求項1に記載の方法。 - メモリとプロセッサーを含むサーバーであって、前記メモリには、コンピュータ可読命令が記憶され、前記コンピュータ可読命令が前記プロセッサーによって実行されるときに、前記プロセッサーに、
ドメイン名解析要求パケットを取得することと、
取得した前記ドメイン名解析要求パケットを第1のキャッシュ領域にキャッシュすることと、
前記第1のキャッシュ領域において、キャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することと、
キャッシュされた前記ドメイン名解析要求パケットによって解析が要求されたドメイン名及び要求されたレコードタイプを抽出することと、
第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することと、
検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することと、
を実行させることを特徴とするサーバー。 - 前記第1のキャッシュ領域及び前記第2のキャッシュ領域は、ユーザー空間にあり、前記したドメイン名解析要求パケットを取得することは、
オペレーティングシステムカーネルがネットワークカード受信キューからデータパケットを読み取ってユーザー空間に伝達するときに、伝達される前記データパケットに含まれるデータプロトコル識別子を取得することと、
前記データプロトコル識別子が、伝達される前記データパケットがドメイン名解析要求パケットであることを示すときに、前記ドメイン名解析要求パケットを取得することと、
を含むことを特徴とする請求項9に記載のサーバー。 - 前記コンピュータ可読命令が前記プロセッサーによって実行されるときに、さらに、前記プロセッサーに、
並行する解析スレッドからアイドル状態にある解析スレッドを選択することと、
選択された前記解析スレッドによって、前記したドメイン名解析要求パケットを取得することと、前記した取得した前記ドメイン名解析要求パケットを第1のキャッシュ領域にキャッシュすることと、前記した前記第1のキャッシュ領域においてキャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することと、前記したキャッシュされた前記ドメイン名解析要求パケットによって解析が要求されたドメイン名及び要求されたレコードタイプを抽出することと、前記した第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することと、前記した検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することとを実行することと、
を実行させることを特徴とする請求項9に記載のサーバー。 - 前記第1のキャッシュ領域及び前記第2のキャッシュ領域は、ユーザー空間にあり、前記した選択された前記解析スレッドによって前記したドメイン名解析要求パケットを取得することを実行することは、
オペレーティングシステムカーネルがネットワークカード受信キューからデータパケットを読み取ってユーザー空間に伝達するときに、選択された前記解析スレッドによって、伝達される前記データパケットに含まれるデータプロトコル識別子を取得することと、
前記データプロトコル識別子が、伝達される前記データパケットが非ドメイン名解析要求パケットであることを示すときに、選択された前記解析スレッドによって、伝達される前記データパケットのアドレスポインタを前記ユーザー空間における第3のキャッシュ領域にキャッシュすることと、
並行する解析スレッドとは独立したカーネルインタラクションスレッドによって前記第3のキャッシュ領域からデータパケットを読み取って、読み取ったデータパケットを前記オペレーティングシステムカーネルにフィードバックして応答することと、
を含むことを特徴とする請求項11に記載のサーバー。 - 前記した前記第1のキャッシュ領域においてキャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することは、
前記第1のキャッシュ領域においてキャッシュされた前記ドメイン名解析要求パケットの先頭アドレスポインタを確定することと、
前記第1のキャッシュ領域においてキャッシュされた前記ドメイン名解析要求パケットのうち修正待ちデータのアドレスポインタオフセットを確定し、前記修正待ちデータが前記ドメイン名解析要求パケットとそれに対応するドメイン名解析応答パケットとのそれぞれのヘッダデータ間の差分データであることと、
前記先頭アドレスポインタと前記アドレスポインタオフセットに基づき、前記第1のキャッシュ領域において前記修正待ちデータを位置決めすることと、
位置決めされた前記修正待ちデータを前記ドメイン名解析応答パケットのうち前記修正待ちデータに対応するデータに修正することと、
を含むことを特徴とする請求項9に記載のサーバー。 - 前記応答データは、予め設定された応答フォーマットに従ってドメイン名解析レコードをパッケージングすることによって得られ、
前記コンピュータ可読命令が前記プロセッサーによって実行されるときに、前記プロセッサーに、
現在の時間が前記応答データに含まれるキャッシュ期限を超えると、前記ドメイン名解析レコードを更新することと、
予め設定された応答フォーマットに従って、更新された前記ドメイン名解析レコードを更新された応答データにパッケージングすることと、
前記第2のキャッシュ領域におけるプリキャッシュされた前記応答データを前記更新された応答データに置き換えることと
をさらに実行させることを特徴とする請求項9に記載のサーバー。 - 前記した第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することは、
抽出された前記ドメイン名によってマッピングされたハッシュ値を取得することと、
ハッシュテーブルにおいて、前記ハッシュ値が指向するリンクリストを確定することと、
前記リンクリストにおいて、抽出された前記ドメイン名を含み且つ抽出された前記レコードタイプに対応するノードを検索することと、
検索された前記ノードから応答データのキャッシュアドレスを抽出することと、
前記キャッシュアドレスに基づき、前記第2のキャッシュ領域から対応するプリキャッシュされた応答データを読み取ることと、
を含むことを特徴とする請求項9に記載のサーバー。 - 前記した検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することは、
前記第1のキャッシュ領域における修正後の前記ドメイン名解析要求パケットの先頭アドレスポインタを取得することと、
修正後の前記ドメイン名解析要求パケットのデータの総量に対応するアドレスポインタオフセットを取得することと、
修正後の前記ドメイン名解析要求パケットの先頭アドレスポインタと前記アドレスポインタオフセットに基づき、前記応答データの先頭アドレスポインタを確定することと、
前記応答データの先頭アドレスポインタに基づき、前記応答データを前記第1のキャッシュ領域にキャッシュして、前記第1のキャッシュ領域にキャッシュされ、且つ修正後の前記ドメイン名解析要求パケット及びキャッシュされた前記応答データを含むドメイン名解析応答パケットを取得することと、
を含むことを特徴とする請求項9に記載のサーバー。 - コンピュータ可読命令が記憶される一つまたは複数の不揮発性記憶媒体であって、前記コンピュータ可読命令が一つまたは複数のプロセッサーによって実行されるときに、一つまたは複数のプロセッサーに、
ドメイン名解析要求パケットを取得することと、
取得した前記ドメイン名解析要求パケットを第1のキャッシュ領域にキャッシュすることと、
前記第1のキャッシュ領域において、キャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することと、
キャッシュされた前記ドメイン名解析要求パケットによって解析が要求されたドメイン名及び要求されたレコードタイプを抽出することと、
第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することと、
検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することと、
を実行させることを特徴とする記憶媒体。 - 前記第1のキャッシュ領域及び前記第2のキャッシュ領域は、ユーザー空間にあり、前記したドメイン名解析要求パケットを取得することは、
オペレーティングシステムカーネルがネットワークカード受信キューからデータパケットを読み取ってユーザー空間に伝達するときに、伝達される前記データパケットに含まれるデータプロトコル識別子を取得することと、
前記データプロトコル識別子が、伝達される前記データパケットがドメイン名解析要求パケットであることを示すときに、前記ドメイン名解析要求パケットを取得することと、
を含むことを特徴とする請求項17に記載の記憶媒体。 - 前記コンピュータ可読命令が一つまたは複数のプロセッサーによって実行されるときに、一つまたは複数のプロセッサーに、
並行する解析スレッドからアイドル状態にある解析スレッドを選択することと、
選択された前記解析スレッドによって、前記したドメイン名解析要求パケットを取得することと、前記した取得した前記ドメイン名解析要求パケットを第1のキャッシュ領域にキャッシュすることと、前記した前記第1のキャッシュ領域において、キャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することと、前記したキャッシュされた前記ドメイン名解析要求パケットによって解析が要求されたドメイン名及び要求されたレコードタイプを抽出することと、前記した第2のキャッシュ領域において抽出された前記ドメイン名に対応し、且つ抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することと、前記した検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することとを実行することと、
を実行させることを特徴とする請求項17に記載の記憶媒体。 - 前記第1のキャッシュ領域及び前記第2のキャッシュ領域は、ユーザー空間にあり、前記した選択された前記解析スレッドによって前記したドメイン名解析要求パケットを取得することを実行することは、
オペレーティングシステムカーネルがネットワークカード受信キューからデータパケットを読み取ってユーザー空間に伝達するときに、選択された前記解析スレッドによって、伝達される前記データパケットに含まれるデータプロトコル識別子を取得することと、
前記データプロトコル識別子が、伝達される前記データパケットが非ドメイン名解析要求パケットであることを示すときに、選択された前記解析スレッドによって、伝達される前記データパケットのアドレスポインタを前記ユーザー空間における第3のキャッシュ領域にキャッシュすることと、
並行する解析スレッドとは独立したカーネルインタラクションスレッドによって、前記第3のキャッシュ領域からデータパケットを読み取って、読み取ったデータパケットを前記オペレーティングシステムカーネルにフィードバックして応答することと、
を含むことを特徴とする請求項19に記載の記憶媒体。 - 前記した前記第1のキャッシュ領域においてキャッシュされた前記ドメイン名解析要求パケットに含まれるヘッダデータを修正して、キャッシュされた前記ドメイン名解析要求パケットに対応するドメイン名解析応答パケットのヘッダデータを取得することは、
前記第1のキャッシュ領域においてキャッシュされた前記ドメイン名解析要求パケットの先頭アドレスポインタを確定することと、
前記第1のキャッシュ領域においてキャッシュされた前記ドメイン名解析要求パケットのうち修正待ちデータのアドレスポインタオフセットを確定し、前記修正待ちデータが前記ドメイン名解析要求パケットとそれに対応するドメイン名解析応答パケットとのそれぞれのヘッダデータ間の差分データであることと、
前記先頭アドレスポインタと前記アドレスポインタオフセットに基づき、前記第1のキャッシュ領域において前記修正待ちデータを位置決めすることと、
位置決めされた前記修正待ちデータを前記ドメイン名解析応答パケットのうち前記修正待ちデータに対応するデータに修正することと、
を含むことを特徴とする請求項17に記載の記憶媒体。 - 前記応答データは、予め設定された応答フォーマットに従ってドメイン名解析レコードをパッケージングすることによって得られ、
前記コンピュータ可読命令が一つまたは複数の前記プロセッサーによって実行されるときに、一つまたは複数の前記プロセッサーに、
現在の時間が前記応答データに含まれるキャッシュ期限を超えると、前記ドメイン名解析レコードを更新することと、
予め設定された応答フォーマットに従って、更新された前記ドメイン名解析レコードを更新された応答データにパッケージングすることと、
前記第2のキャッシュ領域におけるプリキャッシュされた前記応答データを前記更新された応答データに置き換えることと、
をさらに実行させることを特徴とする請求項17に記載の記憶媒体。 - 前記した第2のキャッシュ領域において、抽出された前記ドメイン名に対応し、且つ抽出された前記レコードタイプに属する、プリキャッシュされた応答データを検索することは、
抽出された前記ドメイン名によってマッピングされたハッシュ値を取得することと、
ハッシュテーブルにおいて、前記ハッシュ値が指向するリンクリストを確定することと、
前記リンクリストにおいて、抽出された前記ドメイン名を含み且つ抽出された前記レコードタイプに対応するノードを検索することと、
検索された前記ノードから応答データのキャッシュアドレスを抽出することと、
前記キャッシュアドレスに基づき、前記第2のキャッシュ領域から対応するプリキャッシュされた応答データを読み取ることと、
を含むことを特徴とする請求項17に記載の記憶媒体。 - 前記した検索された前記応答データと修正後の前記ドメイン名解析要求パケットとを組み合わせて、ドメイン名解析応答パケットを取得することは、
前記第1のキャッシュ領域における修正後の前記ドメイン名解析要求パケットの先頭アドレスポインタを取得することと、
修正後の前記ドメイン名解析要求パケットのデータの総量に対応するアドレスポインタオフセットを取得することと、
修正後の前記ドメイン名解析要求パケットの先頭アドレスポインタと前記アドレスポインタオフセットに基づき、前記応答データの先頭アドレスポインタを確定することと、
前記応答データの先頭アドレスポインタに基づき、前記応答データを前記第1のキャッシュ領域にキャッシュして、前記第1のキャッシュ領域にキャッシュされ且つ修正後の前記ドメイン名解析要求パケットとキャッシュされた前記応答データを含むドメイン名解析応答パケットを取得することと、
を含むことを特徴とする請求項17に記載の記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710021111.4 | 2017-01-11 | ||
CN201710021111.4A CN106790762B (zh) | 2017-01-11 | 2017-01-11 | 域名解析方法和装置 |
PCT/CN2017/117904 WO2018130061A1 (zh) | 2017-01-11 | 2017-12-22 | 域名解析方法、服务器和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019537372A JP2019537372A (ja) | 2019-12-19 |
JP6816275B2 true JP6816275B2 (ja) | 2021-01-20 |
Family
ID=58947925
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019524972A Active JP6816275B2 (ja) | 2017-01-11 | 2017-12-22 | ドメイン名解析方法、サーバー及び記憶媒体 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10826869B2 (ja) |
EP (1) | EP3570512B1 (ja) |
JP (1) | JP6816275B2 (ja) |
KR (1) | KR102199403B1 (ja) |
CN (1) | CN106790762B (ja) |
MA (1) | MA47252A (ja) |
WO (1) | WO2018130061A1 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106790762B (zh) * | 2017-01-11 | 2022-05-24 | 腾讯科技(深圳)有限公司 | 域名解析方法和装置 |
CN107483604B (zh) * | 2017-08-29 | 2020-12-15 | 武汉斗鱼网络科技有限公司 | Nginx-RTMP动态更新DNS缓存的方法和装置 |
CN108600406B (zh) * | 2018-03-27 | 2021-06-01 | 上海兆芯集成电路有限公司 | 处理不同类型请求的网络装置 |
JP7044033B2 (ja) * | 2018-11-06 | 2022-03-30 | 日本電信電話株式会社 | アクセス制御方法、アクセス制御装置、およびデータ処理装置 |
CN110147864B (zh) | 2018-11-14 | 2022-02-22 | 腾讯科技(深圳)有限公司 | 编码图案的处理方法和装置、存储介质、电子装置 |
CN111030988B (zh) * | 2019-11-01 | 2022-01-04 | 烽火通信科技股份有限公司 | 一种自反馈调度导流方法及系统 |
CN111711706B (zh) * | 2020-04-30 | 2023-04-07 | 广州根链国际网络研究院有限公司 | Dns递归请求方法及系统 |
CN111770049B (zh) * | 2020-05-09 | 2022-06-03 | 优刻得科技股份有限公司 | 全局缓存变量及报文信息存储方法及装置 |
KR102537370B1 (ko) * | 2020-05-29 | 2023-05-30 | 주식회사 맥데이타 | 대용량 네트워크 모니터링을 위한 실시간 패킷 분석 방법 및 장치 |
KR102423039B1 (ko) * | 2020-06-30 | 2022-07-21 | 주식회사 맥데이타 | 대용량 네트워크 모니터링을 위한 실시간 패킷 데이터 저장 방법 및 장치 |
CN112040027B (zh) * | 2020-09-14 | 2023-06-16 | 网易(杭州)网络有限公司 | 一种数据处理的方法及装置、电子设备、存储介质 |
CN112887442B (zh) * | 2021-01-11 | 2023-02-07 | 杭州迪普科技股份有限公司 | 域名解析查询请求的处理方法及装置 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040073707A1 (en) * | 2001-05-23 | 2004-04-15 | Hughes Electronics Corporation | Generating a list of network addresses for pre-loading a network address cache via multicast |
US7769826B2 (en) * | 2003-06-26 | 2010-08-03 | Nominum, Inc. | Systems and methods of providing DNS services using separate answer and referral caches |
US7440453B2 (en) * | 2004-11-12 | 2008-10-21 | International Business Machines Corporation | Determining availability of a destination for computer network communications |
US7467230B2 (en) * | 2006-02-28 | 2008-12-16 | Microsoft Corporation | Global names zone |
CN100544372C (zh) * | 2007-06-14 | 2009-09-23 | 中兴通讯股份有限公司 | 一种电话号码映射域名服务器的内存处理方法及装置 |
US7783764B2 (en) * | 2008-05-27 | 2010-08-24 | Silver Spring Networks, Inc. | Multi-protocol network registration and address resolution |
US8677018B2 (en) * | 2008-08-25 | 2014-03-18 | Google Inc. | Parallel, side-effect based DNS pre-caching |
US9197486B2 (en) * | 2008-08-29 | 2015-11-24 | Google Inc. | Adaptive accelerated application startup |
CN102075432B (zh) * | 2011-01-25 | 2012-11-28 | 上海聚欣网络科技有限公司 | 一种用于发送及接收报文的方法、装置、设备及系统 |
US9083644B2 (en) * | 2012-02-14 | 2015-07-14 | International Business Machines Corporation | Packet routing for embedded applications sharing a single network interface over multiple virtual networks |
US9215205B1 (en) * | 2012-04-20 | 2015-12-15 | Infoblox Inc. | Hardware accelerator for a domain name server cache |
CN102882991B (zh) * | 2012-09-29 | 2016-03-30 | 北京奇虎科技有限公司 | 一种浏览器及其进行域名解析的方法 |
CN103634315B (zh) * | 2013-11-29 | 2017-11-10 | 哈尔滨工业大学(威海) | 域名服务器的前端控制方法及系统 |
US9531849B2 (en) * | 2014-06-19 | 2016-12-27 | Cavium, Inc. | Method of splitting a packet into individual layers for modification and intelligently stitching layers back together after modification and an apparatus thereof |
CN104917851B (zh) * | 2015-05-08 | 2019-01-22 | 成都亚信网络安全产业技术研究院有限公司 | 信息处理方法及dns缓存服务器 |
US10061619B2 (en) * | 2015-05-29 | 2018-08-28 | Red Hat, Inc. | Thread pool management |
CN105162900B (zh) * | 2015-09-25 | 2019-02-15 | 中国互联网络信息中心 | 一种多节点协作的域名解析和缓存方法及系统 |
CN105681483B (zh) * | 2015-12-29 | 2019-06-11 | 赛尔网络有限公司 | 基于dns服务器测量特定ip范围解析占比的方法及系统 |
CN106096023B (zh) * | 2016-06-24 | 2019-03-08 | 腾讯科技(深圳)有限公司 | 数据读取方法、数据写入方法及数据服务器 |
CN108206814B (zh) * | 2016-12-20 | 2021-03-16 | 腾讯科技(深圳)有限公司 | 一种防御dns攻击的方法、装置及系统 |
CN106790762B (zh) * | 2017-01-11 | 2022-05-24 | 腾讯科技(深圳)有限公司 | 域名解析方法和装置 |
US10375016B1 (en) * | 2018-04-02 | 2019-08-06 | Cloudflare, Inc. | Managing domain name system (DNS) record cache across multiple DNS servers using multicast communication |
-
2017
- 2017-01-11 CN CN201710021111.4A patent/CN106790762B/zh active Active
- 2017-12-22 MA MA047252A patent/MA47252A/fr unknown
- 2017-12-22 EP EP17891473.5A patent/EP3570512B1/en active Active
- 2017-12-22 KR KR1020197013202A patent/KR102199403B1/ko active IP Right Grant
- 2017-12-22 WO PCT/CN2017/117904 patent/WO2018130061A1/zh unknown
- 2017-12-22 JP JP2019524972A patent/JP6816275B2/ja active Active
-
2019
- 2019-03-18 US US16/357,082 patent/US10826869B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP3570512A1 (en) | 2019-11-20 |
KR102199403B1 (ko) | 2021-01-06 |
US20190215299A1 (en) | 2019-07-11 |
KR20190062530A (ko) | 2019-06-05 |
MA47252A (fr) | 2019-11-20 |
CN106790762B (zh) | 2022-05-24 |
CN106790762A (zh) | 2017-05-31 |
WO2018130061A1 (zh) | 2018-07-19 |
EP3570512B1 (en) | 2023-05-24 |
US10826869B2 (en) | 2020-11-03 |
JP2019537372A (ja) | 2019-12-19 |
EP3570512A4 (en) | 2020-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6816275B2 (ja) | ドメイン名解析方法、サーバー及び記憶媒体 | |
US11388251B2 (en) | Providing access to managed content | |
US8321503B2 (en) | Context-specific network resource addressing model for distributed services | |
US8463850B1 (en) | System and method of algorithmically generating a server side transaction identifier | |
US6754799B2 (en) | System and method for indexing and retrieving cached objects | |
US10740299B2 (en) | Systems and methods for providing continuing access to a remote computer program | |
EP2214356B1 (en) | System for forwarding a packet with a hierarchically structured variable-length identifier | |
WO2021169113A1 (zh) | 数据管理方法、装置、计算机设备和存储介质 | |
WO2013143403A1 (zh) | 一种访问网站的方法和系统 | |
US20210377211A1 (en) | Cross protocol association for internet addresses for metadata association systems and methods | |
US9392079B2 (en) | Directory service discovery and/or learning | |
CN109144514B (zh) | Json格式数据解析存储方法及装置 | |
CN112261090A (zh) | Web数据处理方法、装置、计算机设备和可读存储介质 | |
EP3107010B1 (en) | Data integration pipeline | |
CN113791730B (zh) | 基于双存储池的放置组调整方法、系统、装置及存储介质 | |
CN106959975B (zh) | 一种转码资源缓存处理方法、装置及设备 | |
CN109495525B (zh) | 网络组件、解析内容标识的方法和计算机可读存储介质 | |
US10015012B2 (en) | Precalculating hashes to support data distribution | |
US10205679B2 (en) | Resource object resolution management | |
US20180367452A1 (en) | Information centric networking over multi-access network interfaces | |
CN116866429A (zh) | 一种数据访问方法及相关装置 | |
CN112532414B (zh) | 确定isp归属的方法、装置、设备及计算机存储介质 | |
CN115129779A (zh) | 数据库的同步方法、装置及可读介质 | |
US7797359B1 (en) | Recursive data naming | |
US10997054B1 (en) | Leveraging training data towards increasing the explainability of ML-based code analysis tools |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190513 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200519 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200812 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20201215 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201223 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6816275 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |