Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek představuje příklady trasování sítě, které zachycuje sekvenci při ukončení připojení TCP (Transmission Control Protocol) mezi klientskou aplikací a databázovým strojem SQL Serveru (server). Pochopení těchto vzorů je zásadní pro diagnostiku chování sítě, identifikaci strategií sdružování a optimalizaci správy připojení ve webových aplikacích nebo aplikacích služeb.
Zavírání typů připojení
Tento článek obsahuje příklady pro normální připojení TCP a několik připojení MARS (Active Result Sets). MARS je funkce SQL Serveru představená v systému SQL Server 2005 (9.x), která umožňuje spouštění více příkazů na připojení, aniž by bylo nutné před spuštěním druhého příkazu vyčistit výsledky z prvního příkazu. Prostřednictvím multiplexování relací (SMUX) je dosaženo MARS.
- Normální připojení
- připojení MARS
Tato část popisuje několik příkladů zavření síťového připojení.
- IP adresa klienta je
10.10.10.104 - IP adresa serveru je
10.10.10.22
Zavírání paketů
Tento příklad ukazuje normální sekvenci uzavření připojení. Všimněte si malého počtu snímků a časových posunů. Tato posloupnost je nejpravděpodobněji uzavřením sdíleného připojení. K tomu by mělo dojít během 30 sekund od začátku trasování, jinak se můžou zobrazit i keep-alive pakety.
Frame Offset Source IP Dest IP Description
----- --------- ------------ ------------ ---------------------------------------------------------------------------
50 4.1529661 10.10.10.104 10.10.10.22 TCP:Flags=...A...F, SrcPort=4657, DstPort=1433, PayloadLen=0, Seq=413460761
51 4.1529661 10.10.10.22 10.10.10.104 TCP:Flags=...A...., SrcPort=1433, DstPort=4657, PayloadLen=0, Seq=280398321
52 4.1529661 10.10.10.22 10.10.10.104 TCP:Flags=...A...F, SrcPort=1433, DstPort=4657, PayloadLen=0, Seq=280398321
54 4.2330441 10.10.10.104 10.10.10.22 TCP:Flags=...A...., SrcPort=4657, DstPort=1433, PayloadLen=0, Seq=413460761
příkazy Transact-SQL a zavírání paketů
Tento příklad ukazuje zavření nepoolovaného připojení po dvou příkazech Transact-SQL. Pokud toto připojení nebylo součástí fondu, mohli byste také vidět pakety pro udržování spojení spojené s odesíláním připojení zpět do fondu připojení, místo zavíracích paketů bezprostředně po poslední odpovědi ze serveru. Doporučujeme sdružování připojení v jakémkoli typu webové nebo servisní aplikace, aby bylo umožněno opakované použití připojení. Sdružování připojení snižuje počet připojení k serveru a minimalizuje náklady a zpoždění spojené s novými připojeními.
Frame Offset Source IP Dest IP Description
----- --------- ------------ ------------ ---------------------------------------------------------------------------
364 9.1949581 10.10.10.104 10.10.10.22 TDS:SQLBatch, Version = 7.300000, SPID = 0, PacketID = 1, Flags=...AP..., S
365 9.1949581 10.10.10.22 10.10.10.104 TDS:Response, Version = 7.300000, SPID = 130, PacketID = 1, Flags=...AP...,
366 9.3043331 10.10.10.104 10.10.10.22 TDS:SQLBatch, Version = 7.300000, SPID = 0, PacketID = 1, Flags=...AP..., S
367 9.3072631 10.10.10.22 10.10.10.104 TDS:Response, Version = 7.300000, SPID = 130, PacketID = 1, Flags=...AP...,
375 9.4078491 10.10.10.104 10.10.10.22 TCP:Flags=...A...F, SrcPort=4647, DstPort=1433, PayloadLen=0, Seq=157672648
376 9.4078491 10.10.10.22 10.10.10.104 TCP:Flags=...A...., SrcPort=1433, DstPort=4647, PayloadLen=0, Seq=192890973
379 9.4078491 10.10.10.22 10.10.10.104 TCP:Flags=...A...F, SrcPort=1433, DstPort=4647, PayloadLen=0, Seq=192890973
397 9.5221071 10.10.10.104 10.10.10.22 TCP:Flags=...A...., SrcPort=4647, DstPort=1433, PayloadLen=0, Seq=157672649
Nečinné připojení nebo připojení ve fondu je uzavíráno
Připojení je uzavřeno 10 sekund po předchozí výměně dat keep-alive (viz sloupec Delta).
Poznámka
Analyzátor omylem označí počáteční ACK+FIN paket (Frame 1881) jako udržovací ACK paket, pravděpodobně kvůli předchozímu udržovacímu paketu. Inicializuje se však uzavření připojení.
Frame Offset Delta Source IP Dest IP Description
----- ---------- ---------- ----------- ----------- -----------------------------------------------------------------
1314 16.3641802 0.0000000 10.10.10.45 10.10.10.51 TCP:[Keep alive]Flags=...A...., SrcPort=51708, DstPort=1433, Payl
1317 16.3677083 0.0035281 10.10.10.51 10.10.10.45 TCP:[Keep alive ack]Flags=...A...., SrcPort=1433, DstPort=51708,
1327 16.4269375 0.0592292 10.10.10.51 10.10.10.45 TCP:[Keep alive]Flags=...A...., SrcPort=1433, DstPort=51708, Payl
1328 16.4269637 0.0000262 10.10.10.45 10.10.10.51 TCP:[Keep alive ack]Flags=...A...., SrcPort=51708, DstPort=1433,
1881 26.7918499 10.3648862 10.10.10.45 10.10.10.51 TCP:[Keep alive ack]Flags=...A...F, SrcPort=51708, DstPort=1433,
1886 26.7929474 0.0010975 10.10.10.51 10.10.10.45 TCP:Flags=...A...., SrcPort=1433, DstPort=51708, PayloadLen=0, Se
1888 26.7929474 0.0000000 10.10.10.51 10.10.10.45 TCP:Flags=...A...F, SrcPort=1433, DstPort=51708, PayloadLen=0, Se
1890 26.7929947 0.0000473 10.10.10.45 10.10.10.51 TCP:Flags=...A...., SrcPort=51708, DstPort=1433, PayloadLen=0, Se
Související obsah
- Povolení více aktivních sad výsledků
- použití MARS v ADO.NET
- použití MARS v OLE DB
- Sledování procesu ověřování sítě do databázového modulu