නිවසේ අන්තර්ජාලය සජීවීව සහ වසම් නාම සේවාදායක සංඛ්‍යාලේඛන කරන්නේ කෙසේද?

නිවසේ රවුටරයකට (මෙම අවස්ථාවේදී ෆ්‍රිට්ස්බොක්ස්) බොහෝ දේ වාර්තා කළ හැකිය: ගමනාගමනය කොපමණ ප්‍රමාණයක් යන්නේ කවදාද, කවුරුන් කුමන වේගයෙන් සම්බන්ධ වී ඇත්ද, යනාදිය. දේශීය ජාලයේ වසම් නාම සේවාදායකයක් (DNS) නොදන්නා ලබන්නන් පිටුපස සැඟවී ඇති දේ සොයා ගැනීමට මට උපකාර විය.

සමස්තයක් වශයෙන්, DNS ගෘහස්ථ ජාලයට ධනාත්මක බලපෑමක් ඇති කර ඇත: එය වේගය, ස්ථාවරත්වය සහ කළමනාකරණය එකතු කර ඇත.

පහත දැක්වෙන්නේ ප්‍රශ්න මතු කළ රූප සටහනක් සහ සිදුවන්නේ කුමක්ද යන්න තේරුම් ගැනීමේ අවශ්‍යතාවයයි. ප්‍රතිඵල දැනටමත් දන්නා සහ ක්‍රියාකාරී ඉල්ලීම් වසම් නාම සේවාදායකයන් වෙත පෙරහන් කරයි.

සෑම කෙනෙකුම තවමත් නිදා සිටියදී සෑම දිනකම නොපැහැදිලි වසම් 60 ක් මත විමසන්නේ ඇයි?

සෑම දිනකම, ක්‍රියාකාරී වේලාවන් තුළ නොදන්නා වසම් 440ක් මත විමසනු ලැබේ. ඔවුන් කවුද සහ ඔවුන් කරන්නේ කුමක්ද?

පැයෙන් දිනකට සාමාන්‍ය ඉල්ලීම් ගණන

නිවසේ අන්තර්ජාලය සජීවීව සහ වසම් නාම සේවාදායක සංඛ්‍යාලේඛන කරන්නේ කෙසේද?

SQL වාර්තා විමසුම

WITH CLS AS ( /* prepare unique requests */
SELECT
DISTINCT DATE_NK,
STRFTIME( '%s', SUBSTR(DATE_NK,8,4) || '-' ||
	CASE SUBSTR(DATE_NK,4,3)
	WHEN 'Jan' THEN '01' WHEN 'Feb' THEN '02' WHEN 'Mar' THEN '03' WHEN 'Apr' THEN '04' WHEN 'May' THEN '05' WHEN 'Jun' THEN '06'
	WHEN 'Jul' THEN '07' WHEN 'Aug' THEN '08' WHEN 'Sep' THEN '09' WHEN 'Oct' THEN '10' WHEN 'Nov' THEN '11'
	ELSE '12' END || '-' || SUBSTR(DATE_NK,1,2) || ' ' || SUBSTR(TIME_NK,1,8) ) AS EVENT_DT,
REQUEST_NK, DOMAIN
FROM STG_BIND9_LOG )
SELECT
  1 as 'Line: DNS Requests per Day for Hours',
  strftime('%H:00', datetime(EVENT_DT, 'unixepoch')) AS 'Day',
  ROUND(1.0*SUM(1)/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS 'Requests per Day'
FROM CLS
WHERE DOMAIN NOT IN ('in-addr.arpa', 'IN-ADDR.ARPA', 'local', 'dyndns', 'nas', 'ntp.org')
  AND datetime(EVENT_DT, 'unixepoch') > date('now', '-20 days')
GROUP BY /* hour aggregate */
  strftime('%H:00', datetime(EVENT_DT, 'unixepoch'))
ORDER BY strftime('%H:00', datetime(EVENT_DT, 'unixepoch'))

රාත්රියේදී, රැහැන් රහිත ප්රවේශය අක්රිය කර ඇති අතර උපාංග ක්රියාකාරකම් අපේක්ෂා කෙරේ, i.e. නොදන්නා වසම් සඳහා ඡන්ද විමසීමක් නොමැත. මෙයින් අදහස් කරන්නේ Android, iOS සහ Blackberry OS වැනි මෙහෙයුම් පද්ධති සහිත උපාංග වලින් විශාලතම ක්‍රියාකාරකම් සිදු වන බවයි.

දැඩි ලෙස ඡන්ද විමසන වසම් ලැයිස්තුගත කරමු. දිනකට ඉල්ලීම් ගණන, ක්‍රියාකාරකම්වල දින ගණන සහ ඒවා දුටු දවසේ පැය කීයක් වැනි පරාමිති මගින් තීව්‍රතාව තීරණය කරනු ඇත.

අපේක්‍ෂිත සියලුම සැකකරුවන් ලැයිස්තුවේ සිටියහ.

දැඩි ලෙස ඡන්ද විමසීම් කරන ලද වසම්

නිවසේ අන්තර්ජාලය සජීවීව සහ වසම් නාම සේවාදායක සංඛ්‍යාලේඛන කරන්නේ කෙසේද?

SQL වාර්තා විමසුම

WITH CLS AS ( /* prepare unique requests */
SELECT
DISTINCT DATE_NK,
STRFTIME( '%s', SUBSTR(DATE_NK,8,4) || '-' ||
	CASE SUBSTR(DATE_NK,4,3)
	WHEN 'Jan' THEN '01' WHEN 'Feb' THEN '02' WHEN 'Mar' THEN '03' WHEN 'Apr' THEN '04' WHEN 'May' THEN '05' WHEN 'Jun' THEN '06'
	WHEN 'Jul' THEN '07' WHEN 'Aug' THEN '08' WHEN 'Sep' THEN '09' WHEN 'Oct' THEN '10' WHEN 'Nov' THEN '11'
	ELSE '12' END || '-' || SUBSTR(DATE_NK,1,2) || ' ' || SUBSTR(TIME_NK,1,8) ) AS EVENT_DT,
REQUEST_NK, DOMAIN
FROM STG_BIND9_LOG )
SELECT 
  1 as 'Table: Havy DNS Requests',
  REQUEST_NK AS 'Request',
  DOMAIN AS 'Domain',
  REQ AS 'Requests per Day',
  DH AS 'Hours per Day',
  DAYS AS 'Active Days'
FROM (
SELECT
  REQUEST_NK, MAX(DOMAIN) AS DOMAIN,
  COUNT(DISTINCT REQUEST_NK) AS SUBD,
  COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))) AS DAYS,
  ROUND(1.0*SUM(1)/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS REQ,
  ROUND(1.0*COUNT(DISTINCT strftime('%d.%m %H', datetime(EVENT_DT, 'unixepoch')))/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS DH
FROM CLS
WHERE DOMAIN NOT IN ('in-addr.arpa', 'IN-ADDR.ARPA', 'local', 'dyndns', 'nas', 'ntp.org')
  AND datetime(EVENT_DT, 'unixepoch') > date('now', '-20 days')
GROUP BY REQUEST_NK )
WHERE DAYS > 9 -- long period
ORDER BY 4 DESC, 5 DESC
LIMIT 20

ආරක්ෂක හේතූන් මත නිෂ්පාදකයා සාධාරණීකරණය කරන isс.blackberry.com සහ iceberg.blackberry.com අපි අවහිර කරන්නෙමු. ප්‍රතිඵලය: WLAN වෙත සම්බන්ධ වීමට උත්සාහ කරන විට, එය පිවිසුම් පිටුව පෙන්වන අතර නැවත කිසි දිනෙක සම්බන්ධ නොවේ. අපි එය අවහිර නොකරමු.

detectportal.firefox.com එකම යාන්ත්‍රණයක් වන අතර එය ක්‍රියාත්මක වන්නේ Firefox බ්‍රවුසරයේ පමණි. ඔබට WLAN ජාලයට ලොග් වීමට අවශ්‍ය නම්, එය මුලින්ම පිවිසුම් පිටුව පෙන්වයි. ලිපිනය බොහෝ විට ping කළ යුත්තේ මන්දැයි සම්පූර්ණයෙන්ම පැහැදිලි නැත, නමුත් නිෂ්පාදකයා විසින් යාන්ත්රණය පැහැදිලිව විස්තර කර ඇත.

skype. මෙම වැඩසටහනේ ක්‍රියා පණුවෙකුට සමාන ය: එය සැඟවී සිටින අතර එය කාර්ය තීරුවේ මරා දැමීමට ඉඩ නොදේ, ජාලයේ විශාල තදබදයක් ජනනය කරයි, සෑම විනාඩි 10 කට වරක් වසම් 4 ක් පිං කරයි. වීඩියෝ ඇමතුමක් කරන විට, එය වඩා හොඳ විය නොහැකි විට අන්තර්ජාල සම්බන්ධතාවය නිරන්තරයෙන් බිඳ වැටේ. දැනට එය අවශ්ය වේ, එබැවින් එය පවතී.

upload.fp.measure.office.com - Office 365 වෙත යොමු කරයි, මට හොඳ විස්තරයක් සොයාගත නොහැකි විය.
browser.pipe.aria.microsoft.com - මට හොඳ විස්තරයක් සොයාගත නොහැකි විය.
අපි දෙකම අවහිර කරමු.

connect.facebook.net - Facebook චැට් යෙදුම. ඉතිරි වේ.

mediator.mail.ru mail.ru වසම සඳහා වූ සියලුම ඉල්ලීම් විශ්ලේෂණය කිරීමෙන් පෙන්නුම් කළේ අවිශ්වාසය ඇති කරන වෙළඳ ප්‍රචාරණ සම්පත් සහ සංඛ්‍යාලේඛන එකතු කරන්නන් විශාල සංඛ්‍යාවක් සිටින බවයි. mail.ru වසම සම්පූර්ණයෙන්ම අසාදු ලේඛනයට යවනු ලැබේ.

google-analytics.com - උපාංගවල ක්‍රියාකාරීත්වයට බලපාන්නේ නැත, එබැවින් අපි එය අවහිර කරමු.
doubleclick.net - වෙළඳ ප්‍රචාරණ ක්ලික් කිරීම් ගණන් කරයි. අපි අවහිර කරනවා.

බොහෝ ඉල්ලීම් googleapis.com වෙත යයි. අවහිර කිරීම ටැබ්ලටයේ කෙටි පණිවිඩ ප්‍රීතියෙන් අක්‍රිය කිරීමට හේතු වී ඇත, එය මට මෝඩ ලෙස පෙනේ. ඒත් playstore එක වැඩ නැවැත්තුවා, ඒක නිසා unblock කරමු.

cloudflare.com - ඔවුන් විවෘත මූලාශ්‍රයට ආදරය කරන බවත් පොදුවේ තමන් ගැන බොහෝ දේ ලියන බවත් ලියනවා. වසම් සමීක්ෂණයේ තීව්‍රතාවය සම්පූර්ණයෙන්ම පැහැදිලි නැත, එය බොහෝ විට අන්තර්ජාලයේ සත්‍ය ක්‍රියාකාරකම්වලට වඩා බෙහෙවින් වැඩි ය. අපි එය දැනට තබමු.

මේ අනුව, ඉල්ලීම්වල තීව්රතාවය බොහෝ විට උපාංගවල අවශ්ය ක්රියාකාරිත්වයට සම්බන්ධ වේ. නමුත් ක්‍රියාකාරකම් සමඟ එය ඉක්මවා ගිය අයද සොයා ගන්නා ලදී.

පළමු

රැහැන් රහිත අන්තර්ජාලය සක්රිය කර ඇති විට, සෑම කෙනෙකුම තවමත් නිදාගෙන සිටින අතර, මුලින්ම ජාලයට යවන ලද ඉල්ලීම් මොනවාදැයි දැක ගත හැකිය. ඉතින්, 6:50 ට අන්තර්ජාලය ක්‍රියාත්මක වන අතර පළමු මිනිත්තු දහයේ කාලය තුළ වසම් 60 ක් දිනපතා ඡන්ද විමසීමක් කරනු ලැබේ:

නිවසේ අන්තර්ජාලය සජීවීව සහ වසම් නාම සේවාදායක සංඛ්‍යාලේඛන කරන්නේ කෙසේද?

SQL වාර්තා විමසුම

WITH CLS AS ( /* prepare unique requests */
SELECT
DISTINCT DATE_NK,
STRFTIME( '%s', SUBSTR(DATE_NK,8,4) || '-' ||
	CASE SUBSTR(DATE_NK,4,3)
	WHEN 'Jan' THEN '01' WHEN 'Feb' THEN '02' WHEN 'Mar' THEN '03' WHEN 'Apr' THEN '04' WHEN 'May' THEN '05' WHEN 'Jun' THEN '06'
	WHEN 'Jul' THEN '07' WHEN 'Aug' THEN '08' WHEN 'Sep' THEN '09' WHEN 'Oct' THEN '10' WHEN 'Nov' THEN '11'
	ELSE '12' END || '-' || SUBSTR(DATE_NK,1,2) || ' ' || SUBSTR(TIME_NK,1,8) ) AS EVENT_DT,
REQUEST_NK, DOMAIN
FROM STG_BIND9_LOG )
SELECT
  1 as 'Table: First DNS Requests at 06:00',
  REQUEST_NK AS 'Request',
  DOMAIN AS 'Domain',
  REQ AS 'Requests',
  DAYS AS 'Active Days',
  strftime('%H:%M', datetime(MIN_DT, 'unixepoch')) AS 'First Ping',
  strftime('%H:%M', datetime(MAX_DT, 'unixepoch')) AS 'Last Ping'
FROM (
SELECT
  REQUEST_NK, MAX(DOMAIN) AS DOMAIN,
  MIN(EVENT_DT) AS MIN_DT,
  MAX(EVENT_DT) AS MAX_DT,
  COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))) AS DAYS,
  ROUND(1.0*SUM(1)/COUNT(DISTINCT strftime('%d.%m', datetime(EVENT_DT, 'unixepoch'))), 1) AS REQ
FROM CLS
WHERE DOMAIN NOT IN ('in-addr.arpa', 'IN-ADDR.ARPA', 'local', 'dyndns', 'nas', 'ntp.org')
  AND datetime(EVENT_DT, 'unixepoch') > date('now', '-20 days')
  AND strftime('%H', datetime(EVENT_DT, 'unixepoch')) = strftime('%H', '2019-08-01 06:50:00')
GROUP BY REQUEST_NK
 )
WHERE DAYS > 3 -- at least 4 days activity
ORDER BY 5 DESC, 4 DESC

ෆයර්ෆොක්ස් පිවිසුම් පිටුවක් තිබීම සඳහා WLAN සම්බන්ධතාවය පරීක්ෂා කරයි.
යෙදුම සක්‍රියව ක්‍රියාත්මක නොවූවත් Citrix එහි සේවාදායකය පිං කරයි.
Symantec සහතික සහතික කරයි.
සැකසුම් තුළ මම මෙය නොකරන ලෙස ඉල්ලා සිටියද, මොසිල්ලා යාවත්කාලීන කිරීම් සඳහා පරීක්ෂා කරයි.

mmo.de යනු සූදු සේවාවකි. බොහෝ විට ඉල්ලීම ආරම්භ කර ඇත්තේ ෆේස්බුක් චැට් මගිනි. අපි අවහිර කරනවා.

Apple විසින් සියළුම සේවාවන් සක්රිය කරනු ඇත. api-glb-fra.smoot.apple.com - විස්තරය අනුව විනිශ්චය කිරීම, සෑම බොත්තමක් ක්ලික් කිරීමක්ම සෙවුම් යන්ත්‍ර ප්‍රශස්ත කිරීමේ අරමුණු සඳහා මෙහි යවනු ලැබේ. අතිශයින් සැක සහිත, නමුත් ක්‍රියාකාරීත්වයට සම්බන්ධයි. අපි ඒක දාලා යනවා.

පහත දැක්වෙන්නේ microsoft.com වෙත ඉල්ලීම් වල දිගු ලැයිස්තුවකි. අපි තුන්වන මට්ටමේ සිට සියලුම වසම් අවහිර කරන්නෙමු.

පළමු උපවසම් ගණන
නිවසේ අන්තර්ජාලය සජීවීව සහ වසම් නාම සේවාදායක සංඛ්‍යාලේඛන කරන්නේ කෙසේද?

ඉතින්, රැහැන් රහිත අන්තර්ජාලය සක්රිය කිරීමේ පළමු මිනිත්තු 10.
iOS වැඩිම උප වසම් ඡන්ද විමසයි - 32. Android - 24, පසුව Windows - 15 සහ අවසාන වශයෙන් Blackberry - 9.
ෆේස්බුක් යෙදුම පමණක් වසම් 10 ක්, ස්කයිප් ඡන්ද විමසීම් වසම් 9 ක් කරයි.

තොරතුරු මූලාශ්රය

විශ්ලේෂණය සඳහා මූලාශ්‍රය වූයේ bind9 දේශීය සේවාදායක ලොග් ගොනුව වන අතර එහි පහත ආකෘතිය අඩංගු වේ:

01-Aug-2019 20:03:30.996 client 192.168.0.2#40693 (api.aps.skype.com): query: api.aps.skype.com IN A + (192.168.0.102)

ගොනුව sqlite දත්ත ගබඩාවකට ආයාත කර SQL විමසුම් භාවිතයෙන් විශ්ලේෂණය කරන ලදී.
සේවාදායකය හැඹිලියක් ලෙස ක්‍රියා කරයි; ඉල්ලීම් පැමිණෙන්නේ රවුටරයෙනි, එබැවින් සෑම විටම එක් ඉල්ලීම් සේවාදායකයෙක් ඇත. සරල කළ වගු ව්යුහයක් ප්රමාණවත්ය, i.e. වාර්තාවට ඉල්ලීමේ වේලාව, ඉල්ලීමම සහ කණ්ඩායම් කිරීම සඳහා දෙවන මට්ටමේ වසම අවශ්‍ය වේ.

DDL වගු

CREATE TABLE STG_BIND9_LOG (
  LINE_NK       INTEGER NOT NULL DEFAULT 1,
  DATE_NK       TEXT NOT NULL DEFAULT 'n.a.',
  TIME_NK       TEXT NOT NULL DEFAULT 'n.a.',
  CLI           TEXT, -- client
  IP            TEXT,
  REQUEST_NK    TEXT NOT NULL DEFAULT 'n.a.', -- requested domain
  DOMAIN        TEXT NOT NULL DEFAULT 'n.a.', -- domain second level
  QUERY         TEXT,
  UNIQUE (LINE_NK, DATE_NK, TIME_NK, REQUEST_NK)
);

නිගමනය

මේ අනුව, ඩොමේන් නාම සේවාදායක ලොගය විශ්ලේෂණය කිරීමේ ප්රතිඵලයක් ලෙස, වාර්තා 50 කට වඩා වැඩි ගණනක් වාරණය කර වාරණ ලැයිස්තුවේ තබා ඇත.

සමහර විමසුම්වල අවශ්‍යතාවය මෘදුකාංග නිෂ්පාදකයින් විසින් හොඳින් විස්තර කර ඇති අතර විශ්වාසය ඇති කරයි. කෙසේ වෙතත්, බොහෝ ක්‍රියාකාරකම් පදනම් විරහිත සහ සැක සහිත ය.

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න