تسعى مجموعة الوثائق لهذا المنتج جاهدة لاستخدام لغة خالية من التحيز. لأغراض مجموعة الوثائق هذه، يتم تعريف "خالية من التحيز" على أنها لغة لا تعني التمييز على أساس العمر، والإعاقة، والجنس، والهوية العرقية، والهوية الإثنية، والتوجه الجنسي، والحالة الاجتماعية والاقتصادية، والتمييز متعدد الجوانب. قد تكون الاستثناءات موجودة في الوثائق بسبب اللغة التي يتم تشفيرها بشكل ثابت في واجهات المستخدم الخاصة ببرنامج المنتج، أو اللغة المستخدمة بناءً على وثائق RFP، أو اللغة التي يستخدمها منتج الجهة الخارجية المُشار إليه. تعرّف على المزيد حول كيفية استخدام Cisco للغة الشاملة.
ترجمت Cisco هذا المستند باستخدام مجموعة من التقنيات الآلية والبشرية لتقديم محتوى دعم للمستخدمين في جميع أنحاء العالم بلغتهم الخاصة. يُرجى ملاحظة أن أفضل ترجمة آلية لن تكون دقيقة كما هو الحال مع الترجمة الاحترافية التي يقدمها مترجم محترف. تخلي Cisco Systems مسئوليتها عن دقة هذه الترجمات وتُوصي بالرجوع دائمًا إلى المستند الإنجليزي الأصلي (الرابط متوفر).
يصف هذا وثيقة كيف مادة حفازة 9k مفتاح يقوم ال TCP MSS تعديل، وكيف TCP ربط بطئ إلى هذا سمة.
تتيح ميزة ضبط الحد الأقصى لحجم المقطع (MSS) لبروتوكول التحكم في الإرسال (TCP) تكوين الحد الأقصى لحجم المقطع للحزم العابرة التي تجتاز الموجه، وخاصة شرائح TCP باستخدام مجموعة بت SYN. يتم إستخدام الأمرip tcp adjust-mss
في وضع تكوين الواجهة لتحديد قيمة MSS على الموجه الوسيط لحزم SYN لتجنب الاقتطاع.
عندما يقوم المضيف (عادة ما يكون جهاز كمبيوتر شخصي) ببدء جلسة عمل TCP مع خادم، فإنه يقوم بالتفاوض على حجم مقطع IP باستخدام حقل خيار MSS في حزمة نظام TCP. يحدد تكوين MTU على المضيف قيمة حقل MSS. قيمة MTU الافتراضية لبطاقة واجهة الشبكة (NIC) الخاصة بالكمبيوتر هي 1500 بايت بقيمة TCP MSS تبلغ 1460 (1500 بايت - 20 بايت رأس IP - 20 بايت رأس TCP).
يدعم معيار PPP عبر الإيثرنت (PPPoE) وحدة الحد الأقصى للنقل (MTU) بمقدار 1492 بايت فقط.
يمكن أن يتسبب التفاوت بين المضيف وحجم PPPoE MTU في قيام الموجه الموجود بين المضيف والخادم بإسقاط الحزم ذات 1500 بايت وإنهاء جلسات عمل TCP عبر شبكة PPPoE.
حتى في حالة تمكين وحدة الحد الأقصى للنقل (MTU) للمسار (الذي يكتشف وحدة الحد الأقصى للنقل (MTU) الصحيحة عبر المسار) على المضيف، يمكن إسقاط جلسات العمل لأن مسؤولي النظام يقومون أحيانا بتعطيل رسائل خطأ بروتوكول رسائل التحكم في الإنترنت (ICMP) التي يجب إرسالها من المضيف لكي تعمل وحدة الحد الأقصى للنقل (MTU) للمسار.
يساعد الأمر ip tcp adjust-mss في منع إسقاط جلسات TCP من خلال ضبط قيمة MSS لحزم TCP syn. يكون الأمر ip tcp adjust-mss فعالا فقط لاتصالات TCP التي تمر عبر الموجه. في معظم الحالات، تكون القيمة المثلى للوسيطة max-segment-size من الأمر ip tcp adjust-mss هي 1452 بايت.
تضيف هذه القيمة بالإضافة إلى رأس IP مكون من 20 بايت، ورأس TCP مكون من 20 بايت، ورأس PPPoE مكون من 8 بايت، حزمة بحجم 1500 بايت تطابق حجم MTU لارتباط الإيثرنت.
ملاحظة: يتم تحويل حركة مرور البيانات المستندة إلى ضبط TCP MSS في محولات Catalyst 9K. يشرح هذا المستند السيناريوهات التي تفترض أن حركة مرور البيانات المستندة إلى تعديل TCP MSS تم تحويلها إلى برامج. أحلت التشكيل مرشد in order to أكدت إن خاص hw/sw برمجية يحول ال TCP MSS baser حركة مرور.
وكما ذكرنا سابقا، يتم دائما تحويل حركة المرور المستندة إلى تعديل TCP MSS عبر البرامج.
وهذا يعني أنه إذا حاولت إجراء تعديل TCP وأديته، فعندئذ يرسل المحول حركة مرور TCP إلى وحدة المعالجة المركزية لتعديل MSS.
على سبيل المثال، إذا قمت بتعديل قيمة TCP MSS على واجهة، فسيتم توجيه ضربة إلى وحدة المعالجة المركزية لجميع حركة مرور TCP التي يتم استقبالها على تلك الواجهة.
وبعد ذلك تقوم وحدة المعالجة المركزية (CPU) بتغيير قيمة MSS وترسل حركة مرور البيانات إلى الواجهة المطلوبة حيث كانت حزمة TCP تلك متجهة.
ولهذا السبب، إذا كان هناك قدر هائل من حركة مرور TCP مع ضبط MSS، فعندئذ يؤدي هذا إلى تحميل قائمة انتظار وحدة المعالجة المركزية (CPU) أكثر من اللازم.
عندما يتم تحميل قائمة انتظار وحدة المعالجة المركزية (CPU) بشكل زائد، فإن برنامج "شرطة مستوى التحكم" (CoPP) يعمل على اكتشاف حركة المرور وإسقاط الحزم للحفاظ على معدل منظم قائمة الانتظار. وهذا يتسبب في إسقاط حزم TCP.
وبالتالي يتم عرض مشاكل مثل بطء نقل الملفات، عمليات إنشاء جلسة SSH، وبطء تطبيق Citrix (في حالة إستخدام TCP).
ويتم عرض المثال الحقيقي لكيفية حدوث هذا هنا.
أنت ذاهب إلى SSH داخل C9200 من C9500-1.
SSH يستخدم شبكة VLAN 10 الخاصة ب C9500-1 (10.10.10.1) كمصدر.
غاية ال SSH هو c9200 s VLAN 20 (10.10.20.1/24).
يستند SSH إلى بروتوكول TCP، وبالتالي فإن أي بطء في بروتوكول TCP يؤثر أيضا على إنشاء جلسة SSH هذه.
هناك محول L3 عابر (C9500-2) بين C9500-1 و C9200.
هناك نقطتان للعبور /30 إرتباط من المستوى الثالث، واحدة بين C9500-1 و C9500-2، والأخرى بين C9500-2 و C9200.
يتم إستخدام OSPF لقابلية الوصول عبر جميع المحولات الثلاثة، ويتم الإعلان عن جميع الشبكات الفرعية/30 وشبكات SVIs في OSPF.
يمكن الوصول إلى جميع بروتوكولات الإنترنت (IP) الموضحة سابقا فيما بينها.
في C9500-2 TE1/0/9، يتم تعديل قيمة TCP MSS.
عند بدء بروتوكول SSH من C9500-1، تحدث مصافحة TCP ثلاثية الإتجاه.
تصل حزمة SYN إلى C9500-2 Te1/0/9 (مدخل)، حيث يتم إجراء ضبط TCP MSS.
تم التقاط التقاط EPC على C9500-2 Te1/0/9 (في كلا الاتجاهين) وبدأ تشغيل SSH من C9500-1 إلى C9200.
فيما يلي تكوين EPC:
C9500-2#show monitor capture mycap
Status Information for Capture mycap
Target Type:
Interface: TenGigabitEthernet1/0/9, Direction: BOTH
Status : Inactive
Filter Details:
Capture all packets
Buffer Details:
Buffer Type: LINEAR (default)
Buffer Size (in MB): 80
File Details:
File not associated
Limit Details:
Number of Packets to capture: 0 (no limit)
Packet Capture duration: 0 (no limit)
Packet Size to capture: 0 (no limit)
Maximum number of packets to capture per second: 1000
Packet sampling rate: 0 (no sampling)
C9500-2#
بدء تشغيل EPC:
C9500-2#monitor capture mycap start
Started capture point : mycap
C9500-2#
بدء تشغيل بروتوكول SSH من C9500-1 إلى C9200:
C9500-1#ssh -l admin 10.10.20.1
Password:
إيقاف EPC:
C9500-2#monitor capture mycap stop
Capture statistics collected at software:
Capture duration - 6 seconds
Packets received - 47
Packets dropped - 0
Packets oversized - 0
Bytes dropped in asic - 0
Capture buffer will exists till exported or cleared
Stopped capture point : mycap
C9500-2#
وفيما يلي الحزم التي تم التقاط EPC:
C9500-2#show monitor capture mycap buffer brief
Starting the packet display ........ Press Ctrl + Shift + 6 to exit
1 0.000000 10.10.10.1 -> 10.10.20.1 TCP 60 44274 -> 22 [SYN] Seq=0 Win=4128 Len=0 MSS=536
2 0.001307 10.10.20.1 -> 10.10.10.1 TCP 60 22 -> 44274 [SYN, ACK] Seq=0 Ack=1 Win=4128 Len=0 MSS=536
3 0.001564 10.10.10.1 -> 10.10.20.1 TCP 60 44274 -> 22 [ACK] Seq=1 Ack=1 Win=4128 Len=0
4 0.003099 10.10.20.1 -> 10.10.10.1 SSH 73 Server: Protocol (SSH-2.0-Cisco-1.25)
5 0.003341 10.10.10.1 -> 10.10.20.1 SSH 73 Client: Protocol (SSH-2.0-Cisco-1.25)
6 0.003419 10.10.10.1 -> 10.10.20.1 TCP 118 [TCP segment of a reassembled PDU]
7 0.003465 10.10.10.1 -> 10.10.20.1 TCP 118 44274 -> 22 [ACK] Seq=84 Ack=20 Win=4109 Len=64 [TCP segment of a reassembled PDU]
8 0.003482 10.10.10.1 -> 10.10.20.1 TCP 118 44274 -> 22 [ACK] Seq=148 Ack=20 Win=4109 Len=64 [TCP segment of a reassembled PDU]
9 0.003496 10.10.10.1 -> 10.10.20.1 TCP 118 44274 -> 22 [ACK] Seq=212 Ack=20 Win=4109 Len=64 [TCP segment of a reassembled PDU]
10 0.003510 10.10.10.1 -> 10.10.20.1 TCP 118 44274 -> 22 [ACK] Seq=276 Ack=20 Win=4109 Len=64 [TCP segment of a reassembled PDU]
11 0.003525 10.10.10.1 -> 10.10.20.1 TCP 118 44274 -> 22 [ACK] Seq=340 Ack=20 Win=4109 Len=64 [TCP segment of a reassembled PDU]
12 0.004719 10.10.20.1 -> 10.10.10.1 TCP 60 22 -> 44274 [ACK] Seq=20 Ack=84 Win=4045 Len=0
~ Output Cut ~
يمكنك رؤية مصافحة TCP تحدث في الحزمة رقم 1،2،3.
الحزمة رقم 1 هي حزمة syn.
يمكنك أن ترى أنها تأتي بقيمة MSS تبلغ 536.
كما يتم ملاحظة حزمة ACK (الحزمة رقم 2) من C9200 بقيمة MSS تبلغ 536.
هنا، ال MSS بقيت قيمة intact ولا تغير بالمفتاح.
فيما يلي تكوين ضبط TCP MSS على C9500-2 Te1/0/9:
C9500-2#sh run int te1/0/9
Building configuration...
Current configuration : 119 bytes
!
interface TenGigabitEthernet1/0/9
no switchport
ip address 192.168.1.2 255.255.255.252
ip tcp adjust-mss 512 ------------------> Here we are changing the MSS value to 512.
الآن، خذ التقاط EPC على C9500-2 TE1/0/9 (في كلا الاتجاهين)، وابدأ SSH من C9500-1 إلى C9200.
فيما يلي تكوين EPC:
C9500-2#show monitor capture mycap
Status Information for Capture mycap
Target Type:
Interface: TenGigabitEthernet1/0/9, Direction: BOTH
Status : Inactive
Filter Details:
Capture all packets
Buffer Details:
Buffer Type: LINEAR (default)
Buffer Size (in MB): 80
File Details:
File not associated
Limit Details:
Number of Packets to capture: 0 (no limit)
Packet Capture duration: 0 (no limit)
Packet Size to capture: 0 (no limit)
Maximum number of packets to capture per second: 1000
Packet sampling rate: 0 (no sampling)
C9500-2#
ابدأ عملية الالتقاط، SSH من C9500-1 إلى C9200، وأوقف عملية الالتقاط.
وفيما يلي الحزم التي تم التقاط وحدة المعالجة المركزية (CPU):
C9500-2#show monitor capture mycap buffer brief
Starting the packet display ........ Press Ctrl + Shift + 6 to exit
1 0.000000 b8:a3:77:ec:ba:f7 -> 01:00:0c:cc:cc:cc CDP 398 Device ID: C9500-1.cisco.com Port ID: TenGigabitEthernet1/0/9
2 0.636138 10.10.10.1 -> 10.10.20.1 TCP 60 53865 -> 22 [SYN] Seq=0 Win=4128 Len=0 MSS=536
3 0.637980 10.10.20.1 -> 10.10.10.1 TCP 60 22 -> 53865 [SYN, ACK] Seq=0 Ack=1 Win=4128 Len=0 MSS=512
4 0.638214 10.10.10.1 -> 10.10.20.1 TCP 60 53865 -> 22 [ACK] Seq=1 Ack=1 Win=4128 Len=0
5 0.639997 10.10.20.1 -> 10.10.10.1 SSH 73 Server: Protocol (SSH-2.0-Cisco-1.25)
6 0.640208 10.10.10.1 -> 10.10.20.1 SSH 73 Client: Protocol (SSH-2.0-Cisco-1.25)
7 0.640286 10.10.10.1 -> 10.10.20.1 TCP 118 [TCP segment of a reassembled PDU]
8 0.640341 10.10.10.1 -> 10.10.20.1 TCP 118 53865 -> 22 [ACK] Seq=84 Ack=20 Win=4109 Len=64 [TCP segment of a reassembled PDU]
9 0.640360 10.10.10.1 -> 10.10.20.1 TCP 118 53865 -> 22 [ACK] Seq=148 Ack=20 Win=4109 Len=64 [TCP segment of a reassembled PDU]
10 0.640375 10.10.10.1 -> 10.10.20.1 TCP 118 53865 -> 22 [ACK] Seq=212 Ack=20 Win=4109 Len=64 [TCP segment of a reassembled PDU]
11 0.640390 10.10.10.1 -> 10.10.20.1 TCP 118 53865 -> 22 [ACK] Seq=276 Ack=20 Win=4109 Len=64 [TCP segment of a reassembled PDU]
12 0.640410 10.10.10.1 -> 10.10.20.1 TCP 118 53865 -> 22 [ACK] Seq=340 Ack=20 Win=4109 Len=64 [TCP segment of a reassembled PDU]
~ Output Cut ~
يمكنك رؤية مصافحة TCP تحدث في الحزم رقم 2،3،4.
الحزمة رقم 2 هي حزمة SYN.
يمكنك أن ترى أنها تأتي بقيمة MSS تبلغ 536.
ولكن يتم ملاحظة حزمة ACK (الحزمة رقم 3) من C9200 بقيمة MSS تبلغ 512.
وهذا يرجع إلى أنه عندما تصل حزمة SYN إلى C9500-2 Te1/0/9، يتم إرسالها إلى وحدة المعالجة المركزية C9500-2 لتعديل TCP MSS من 536 إلى 512.
تعمل وحدة المعالجة المركزية (CPU) الخاصة بالطراز C9500-2 على تغيير MSS إلى 512 وإرسال حزمة SYN من TE1/0/2 نحو C9200.
ثم تستخدم كافة حركات TCP التالية نفس قيمة MSS المعدلة.
الآن دعونا نغوص بعمق حول كيفية إجتياز حزمة SYN عبر المحول وتغييرات MSS تحدث.
بمجرد وصول حزمة SYN هذه إلى واجهة C9500-2، يتم إرسالها إلى وحدة المعالجة المركزية (CPU) لتعديل MSS.
فهي تنتقل أولا إلى بنك الاحتياطي الفيدرالي (حيث يمكنك الاستيلاء عليها)، ثم تنتقل إلى وحدة المعالجة المركزية (حيث يمكنك الاستيلاء عليها أيضا).
دعونا أولا نلقي القبض على بنك الاحتياطي الفيدرالي في C9500-2.
وفيما يلي تكوين فريق الاحتياطي الفيدرالي لالتقاط الكرة:
C9500-2#debug platform software fed switch 1 punt packet-capture buffer limit 16384
Punt PCAP buffer configure: one-time with buffer size 16384...done
بدء بنك الاحتياطي الفيدرالي في أسر البنت:
C9500-2#debug platform software fed switch 1 punt packet-capture start
Punt packet capturing started.
بدء تشغيل بروتوكول SSH من C9500-1 إلى C9200:
C9500-1#ssh -l admin 10.10.20.1
Password:
وقف بنك الاحتياطي الفيدرالي في القبض عليه:
C9500-2#debug platform software fed switch 1 punt packet-capture stop
Punt packet capturing stopped. Captured 3 packet(s)
وهنا بنك الاحتياطي الفيدرالي ربط القبض:
C9500-2#show platform software fed switch active punt packet-capture brief
Punt packet capturing: disabled. Buffer wrapping: disabled
Total captured so far: 3 packets. Capture capacity : 16384 packets
------ Punt Packet Number: 1, Timestamp: 2024/07/31 01:29:46.373 ------
interface : physical: TenGigabitEthernet1/0/9[if-id: 0x00000040], pal: TenGigabitEthernet1/0/9 [if-id: 0x00000040]
metadata : cause: 55 [For-us control], sub-cause: 0, q-no: 4, linktype: MCP_LINK_TYPE_IP [1]
ether hdr : dest mac: 0100.5e00.0005, src mac: b8a3.77ec.baf7
ether hdr : ethertype: 0x0800 (IPv4)
ipv4 hdr : dest ip: 224.0.0.5, src ip: 192.168.1.1
ipv4 hdr : packet len: 100, ttl: 1, protocol: 89
------ Punt Packet Number: 2, Timestamp: 2024/07/31 01:29:47.432 ------
interface : physical: TenGigabitEthernet1/0/9[if-id: 0x00000040], pal: TenGigabitEthernet1/0/9 [if-id: 0x00000040]
metadata : cause: 11 [For-us data], sub-cause: 1, q-no: 14, linktype: MCP_LINK_TYPE_IP [1]
ether hdr : dest mac: 00a3.d144.4bf7, src mac: b8a3.77ec.baf7
ether hdr : ethertype: 0x0800 (IPv4)
ipv4 hdr : dest ip: 10.10.20.1, src ip: 10.10.10.1
ipv4 hdr : packet len: 44, ttl: 254, protocol: 6 (TCP)
tcp hdr : dest port: 22, src port: 35916
------ Punt Packet Number: 3, Timestamp: 2024/07/31 01:29:48.143 ------
interface : physical: TenGigabitEthernet1/0/1[if-id: 0x00000009], pal: TenGigabitEthernet1/0/1 [if-id: 0x00000009]
metadata : cause: 96 [Layer2 control protocols], sub-cause: 0, q-no: 1, linktype: MCP_LINK_TYPE_LAYER2 [10]
ether hdr : dest mac: 0100.0ccc.cccc, src mac: 78bc.1a27.c203
ether hdr : length: 443
يمكنك أن ترى أن الحزمة رقم 2 هي حزمة نظام TCP من 10.10.10.1 إلى 10.10.20.1، قادمة من TE1/0/9.
سؤال لا مهم أن نلاحظ هنا. يمكنك أن ترى أنها تختار الطابور رقم 14 للانتقال من FED إلى CPU.
يمكنك هنا أن ترى كل ال 32 طابقا الموجودة لحركة المرور للانتقال من FED نحو وحدة المعالجة المركزية:
C9500-2#show platform hardware fed switch active qos queue stats internal cpu policer
CPU Queue Statistics
============================================================================================
(default) (set) Queue Queue
QId PlcIdx Queue Name Enabled Rate Rate Drop(Bytes) Drop(Frames)
--------------------------------------------------------------------------------------------
0 11 DOT1X Auth Yes 1000 1000 0 0
1 1 L2 Control Yes 2000 2000 0 0
2 14 Forus traffic Yes 4000 4000 0 0
3 0 ICMP GEN Yes 600 600 0 0
4 2 Routing Control Yes 5400 5400 0 0
5 14 Forus Address resolution Yes 4000 4000 0 0
6 0 ICMP Redirect Yes 600 600 0 0
7 16 Inter FED Traffic Yes 2000 2000 0 0
8 4 L2 LVX Cont Pack Yes 1000 1000 0 0
9 19 EWLC Control Yes 13000 13000 0 0
10 16 EWLC Data Yes 2000 2000 0 0
11 13 L2 LVX Data Pack Yes 1000 1000 0 0
12 0 BROADCAST Yes 600 600 0 0
13 10 Openflow Yes 200 200 0 0
14 13 Sw forwarding Yes 1000 1000 0 0
15 8 Topology Control Yes 13000 13000 0 0
16 12 Proto Snooping Yes 2000 2000 0 0
17 6 DHCP Snooping Yes 400 400 0 0
18 13 Transit Traffic Yes 1000 1000 0 0
19 10 RPF Failed Yes 200 200 0 0
20 15 MCAST END STATION Yes 2000 2000 0 0
21 13 LOGGING Yes 1000 1000 0 0
22 7 Punt Webauth Yes 1000 1000 0 0
23 18 High Rate App Yes 13000 13000 0 0
24 10 Exception Yes 200 200 0 0
25 3 System Critical Yes 1000 1000 0 0
26 10 NFL SAMPLED DATA Yes 200 200 0 0
27 2 Low Latency Yes 5400 5400 0 0
28 10 EGR Exception Yes 200 200 0 0
29 5 Stackwise Virtual OOB Yes 8000 8000 0 0
30 9 MCAST Data Yes 400 400 0 0
31 3 Gold Pkt Yes 1000 1000 0 0
وكما ترى المصروفات العامة، فإن قائمة الانتظار رقم 14 هي قائمة الانتظار "إعادة توجيه البرامج".
في هذه الحالة، يتم إستخدام قائمة الانتظار هذه من قبل حركة مرور TCP للحصول على الضرب على وحدة المعالجة المركزية.
الآن، دعونا نأخذ التقاط وحدة المعالجة المركزية (Control-Plane) على C9500-2.
وفيما يلي تكوين التقاط وحدة المعالجة المركزية (CPU):
C9500-2#sh mon cap test
Status Information for Capture test
Target Type:
Interface: Control Plane, Direction: BOTH
Status : Inactive
Filter Details:
Capture all packets
Buffer Details:
Buffer Type: LINEAR (default)
Buffer Size (in MB): 80
File Details:
File not associated
Limit Details:
Number of Packets to capture: 0 (no limit)
Packet Capture duration: 0 (no limit)
Packet Size to capture: 0 (no limit)
Packet sampling rate: 0 (no sampling)
C9500-2#
تبدأ عملية الالتقاط، SSH من C9500-1 إلى C9200، وتوقف عملية الالتقاط.
وفيما يلي الحزم التي تم التقاط وحدة المعالجة المركزية (CPU):
C9500-2#show monitor capture test buffer brief
Starting the packet display ........ Press Ctrl + Shift + 6 to exit
1 0.000000 00:a3:d1:44:4b:81 -> 01:80:c2:00:00:00 STP 60 RST. Root = 32768/1/00:a3:d1:44:4b:80 Cost = 0 Port = 0x8001
2 0.000010 00:a3:d1:44:4b:a3 -> 01:80:c2:00:00:00 STP 60 RST. Root = 32768/1/00:a3:d1:44:4b:80 Cost = 0 Port = 0x8023
3 0.000013 00:a3:d1:44:4b:a4 -> 01:80:c2:00:00:00 STP 60 RST. Root = 32768/1/00:a3:d1:44:4b:80 Cost = 0 Port = 0x8024
4 0.000016 00:a3:d1:44:4b:a6 -> 01:80:c2:00:00:00 STP 60 RST. Root = 32768/1/00:a3:d1:44:4b:80 Cost = 0 Port = 0x8026
5 0.000019 00:a3:d1:44:4b:a7 -> 01:80:c2:00:00:00 STP 60 RST. Root = 32768/1/00:a3:d1:44:4b:80 Cost = 0 Port = 0x8027
6 0.000022 00:a3:d1:44:4b:a8 -> 01:80:c2:00:00:00 STP 60 RST. Root = 32768/1/00:a3:d1:44:4b:80 Cost = 0 Port = 0x8028
7 0.055470 c0:8b:2a:04:f0:6c -> 01:80:c2:00:00:0e LLDP 117 TTL = 120 SysName = bgl18-cx-amx-b02-2.cisco.com SysDesc = 7.0.2, NCS-5500
9 0.220331 28:63:29:20:31:39 -> 00:01:22:53:74:20 0x3836 30 Ethernet II
10 0.327316 192.168.1.1 -> 224.0.0.5 OSPF 114 Hello Packet
11 0.442986 c0:8b:2a:04:f0:68 -> 01:80:c2:00:00:0e LLDP 117 TTL = 120 SysName = bgl18-cx-amx-b02-2.cisco.com SysDesc = 7.0.2, NCS-5500
12 1.714121 10.10.10.1 -> 10.10.20.1 TCP 60 23098 -> 22 [SYN] Seq=0 Win=4128 Len=0 MSS=536
13 1.714375 10.10.10.1 -> 10.10.20.1 TCP 60 [TCP Out-Of-Order] 23098 -> 22 [SYN] Seq=0 Win=4128 Len=0 MSS=512
14 2.000302 00:a3:d1:44:4b:81 -> 01:80:c2:00:00:00 STP 60 RST. Root = 32768/1/00:a3:d1:44:4b:80 Cost = 0 Port = 0x8001
15 2.000310 00:a3:d1:44:4b:a3 -> 01:80:c2:00:00:00 STP 60 RST. Root = 32768/1/00:a3:d1:44:4b:80 Cost = 0 Port = 0x8023
~ Output Cut ~
الحزمة رقم 12 هي حزمة نظام TCP التي تأتي إلى وحدة المعالجة المركزية (CPU)، مع قيمة MSS الافتراضية الخاصة ب 536.
الحزمة رقم 13 هي حزمة نظام TCP التي يتم إرسالها بواسطة وحدة المعالجة المركزية (CPU)، بعد تعديل قيمة MSS إلى 512.
يمكنك أيضا أخذ تصحيح أخطاء سريع لوحدة المعالجة المركزية (CPU) لرؤية حدوث هذا التغيير.
فيما يلي تكوين تصحيح أخطاء وحدة المعالجة المركزية:
C9500-2#debug ip tcp adjust-mss
TCP Adjust Mss debugging is on
بدء تشغيل بروتوكول SSH من C9500-1 إلى C9200:
C9500-1#ssh -l admin 10.10.20.1
Password:
إيقاف تصحيح أخطاء وحدة المعالجة المركزية:
C9500-2#undebug all
All possible debugging has been turned off
النظر في السجلات الخاصة بتصحيح الأخطاء:
C9500-2#show logging
Syslog logging: enabled (0 messages dropped, 2 messages rate-limited, 0 flushes, 0 overruns, xml disabled, filtering disabled)
No Active Message Discriminator.
No Inactive Message Discriminator.
Console logging: disabled
Monitor logging: level debugging, 0 messages logged, xml disabled,
filtering disabled
Buffer logging: level debugging, 230 messages logged, xml disabled,
filtering disabled
Exception Logging: size (4096 bytes)
Count and timestamp logging messages: disabled
File logging: disabled
Persistent logging: disabled
No active filter modules.
Trap logging: level informational, 210 message lines logged
Logging Source-Interface: VRF Name:
TLS Profiles:
Log Buffer (102400 bytes):
*Jul 31 01:46:32.052: TCPADJMSS: process_enqueue_feature
*Jul 31 01:46:32.893: TCPADJMSS: process_enqueue_feature
*Jul 31 01:46:36.136: TCPADJMSS: process_enqueue_feature
*Jul 31 01:46:41.318: TCPADJMSS: process_enqueue_feature
*Jul 31 01:46:42.412: TCPADJMSS: process_enqueue_feature
*Jul 31 01:46:43.254: TCPADJMSS: process_enqueue_feature
*Jul 31 01:46:43.638: TCPADJMSS: process_enqueue_feature
*Jul 31 01:46:45.783: TCPADJMSS: Input (process)
*Jul 31 01:46:45.783: TCPADJMSS: orig_mss = 536 adj mss = 512 src_ip = 10.10.10.1 dest_ip = 10.10.20.1 in = TenGigabitEthernet1/0/9 out = NULL
*Jul 31 01:46:45.783: TCPADJMSS: paktype = 0x7F83C7BCBF78
*Jul 31 01:46:50.456: TCPADJMSS: process_enqueue_feature
*Jul 31 01:46:51.985: TCPADJMSS: process_enqueue_feature
C9500-2#
يمكنك رؤية النفقات العامة التي تم تعديل قيمة MSS الأصلية ل 536 إلى 512.
أخيرا، يمكنك التقاط EPC على C9200 Gi1/0/3 لتأكيد أن حزمة TCP syn قادمة بالفعل مع MSS بقيمة 512.
فيما يلي تكوين EPC:
C9200#sh mon cap mycap
Status Information for Capture mycap
Target Type:
Interface: GigabitEthernet1/0/3, Direction: BOTH
Status : Inactive
Filter Details:
Capture all packets
Buffer Details:
Buffer Type: LINEAR (default)
Buffer Size (in MB): 80
Limit Details:
Number of Packets to capture: 0 (no limit)
Packet Capture duration: 0 (no limit)
Packet Size to capture: 0 (no limit)
Packet sampling rate: 0 (no sampling)
C9200#
تبدأ عملية الالتقاط، SSH من C9500-1 إلى C9200، وتوقف عملية الالتقاط.
وفيما يلي الحزم التي تم التقاط وحدة المعالجة المركزية (CPU):
C9200#sh mon cap mycap buff br
----------------------------------------------------------------------------
# size timestamp source destination dscp protocol
----------------------------------------------------------------------------
0 118 0.000000 192.168.2.1 -> 224.0.0.5 48 CS6 OSPF
1 64 0.721023 10.10.10.1 -> 10.10.20.1 48 CS6 TCP
2 64 0.722015 10.10.10.1 -> 10.10.20.1 48 CS6 TCP
3 77 0.728026 10.10.10.1 -> 10.10.20.1 48 CS6 TCP
4 122 0.728026 10.10.10.1 -> 10.10.20.1 48 CS6 TCP
5 122 0.728026 10.10.10.1 -> 10.10.20.1 48 CS6 TCP
6 122 0.728026 10.10.10.1 -> 10.10.20.1 48 CS6 TCP
7 122 0.728026 10.10.10.1 -> 10.10.20.1 48 CS6 TCP
8 122 0.728026 10.10.10.1 -> 10.10.20.1 48 CS6 TCP
9 122 0.728026 10.10.10.1 -> 10.10.20.1 48 CS6 TCP
10 122 0.730025 10.10.10.1 -> 10.10.20.1 48 CS6 TCP
~ Output Cut ~
في C9200، لا يمكنك الاطلاع على تفاصيل الحزمة مثل في Wireshark، يمكن توفر التفاصيل الموجزة والعشرية فقط.
لذلك أنت يستطيع صدرت الربط مبكر إلى PCAP مبرد في البرق.
C9200#mon cap mycap تصدير flash:gi1-0-3-both.pcapng
تم التصدير بنجاح
ثم يمكنك نسخ هذا الملف عبر TFTP إلى الكمبيوتر المحلي الخاص بك، وفتح الملف في Wireshark.
هنا يقع أسر ويركارك.
يمكنك ملاحظة أن قيمة TCP MSS لحزمة SYN هي 512.
الآن، لنفترض أن الشبكة تحتوي على أجهزة متعددة باستخدام حركة مرور TCP.
على سبيل المثال، يمكن أن يكونوا بصدد نقل الملفات أو الوصول إلى تطبيق يستند إلى بروتوكول TCP (مثل خادم Citrix).
لقد قمت بمحاكاة ذلك عن طريق توصيل IXIA (مولد حركة المرور) ب C9500-2 Te1/0/37، وإرسال حزم TCP SYN بمعدل مرتفع.
يعمل جهاز IXIA هذا كمقطع شبكة، حيث يستخدم العديد من المستخدمين التطبيقات المستندة إلى بروتوكول TCP.
لقد قمت بتكوين واجهة سطر الأوامر (CLI) set-mss ل IP TCP على TE1/0/37.
وهذا يتسبب في توجيه جميع حركة مرور TCP التي يتم استقبالها على TE1/0/37 إلى وحدة المعالجة المركزية (CPU) الخاصة ب C9500-2.
وهذا بدوره يؤدي إلى تقييد قائمة انتظار "إعادة توجيه البرامج" الخاصة بمنظم CoPP C9500-2، كما هو مذكور مسبقا في المستند.
ونتيجة لذلك، يتأثر إنشاء جلسة بروتوكول طبقة الأمان (SSH) من C9500-1 إلى C9200.
إما أن جلسة عمل SSH لا تشكل، وتنتهي مهلتها، أو أنها تأسست بعد تأخير.
وإليكم كيف تبدو الطوبولوجيا:
دعونا نرى هذا في حيز التنفيذ.
فيما يلي تكوين C9500-2 TE1/0/37:
C9500-2#sh run int te1/0/37
Building configuration...
Current configuration : 135 bytes
interface TenGigabitEthernet1/0/37
no switchport
ip address 10.10.40.1 255.255.255.0
ip tcp adjust-mss 500
load-interval 30
end
تبدأ الآن في إرسال حركة مرور هائلة من IXIA إلى واجهة TE1/0/37.
دعونا نلقي نظرة على معدل حركة المرور الواردة:
C9500-2#sh int te1/0/37 | in rate
Queueing strategy: fifo
30 second input rate 6425812000 bits/sec, 12550415 packets/sec → We can see the enormous Input rate.
30 second output rate 0 bits/sec, 0 packets/sec
فلنحاول إستخدام بروتوكول SSH من C9500-1 إلى C9200 الآن:
C9500-1#ssh -l admin 10.10.20.1
% Connection timed out; remote host not responding
C9500-1#
يمكنك أن ترى بوضوح أن C9500-1 لم تكن قادرة على إرسال SSH إلى C9200.
وذلك نظرا لإسقاط حزمة نظام TCP التي يتم إرسالها بواسطة C9500-1 من قائمة الانتظار "إعادة توجيه البرامج"، والتي يتم قصفها بحركة المرور من TE1/0/37.
دعونا نلقي نظرة على قائمة الانتظار:
C9500-2#sh platform hardware fed switch active qos queue stats internal cpu policer
CPU Queue Statistics
============================================================================================
(default) (set) Queue Queue
QId PlcIdx Queue Name Enabled Rate Rate Drop(Bytes) Drop(Frames)
--------------------------------------------------------------------------------------------
0 11 DOT1X Auth Yes 1000 1000 0 0
1 1 L2 Control Yes 2000 2000 0 0
2 14 Forus traffic Yes 4000 4000 0 0
3 0 ICMP GEN Yes 600 600 0 0
4 2 Routing Control Yes 5400 5400 0 0
5 14 Forus Address resolution Yes 4000 4000 0 0
6 0 ICMP Redirect Yes 600 600 0 0
7 16 Inter FED Traffic Yes 2000 2000 0 0
8 4 L2 LVX Cont Pack Yes 1000 1000 0 0
9 19 EWLC Control Yes 13000 13000 0 0
10 16 EWLC Data Yes 2000 2000 0 0
11 13 L2 LVX Data Pack Yes 1000 1000 0 0
12 0 BROADCAST Yes 600 600 0 0
13 10 Openflow Yes 200 200 0 0
14 13 Sw forwarding Yes 1000 1000 39683368064 620052629 → We can see the huge number of dropped packets in this queue.
15 8 Topology Control Yes 13000 13000 0 0
16 12 Proto Snooping Yes 2000 2000 0 0
17 6 DHCP Snooping Yes 400 400 0 0
18 13 Transit Traffic Yes 1000 1000 0 0
19 10 RPF Failed Yes 200 200 0 0
20 15 MCAST END STATION Yes 2000 2000 0 0
21 13 LOGGING Yes 1000 1000 0 0
22 7 Punt Webauth Yes 1000 1000 0 0
23 18 High Rate App Yes 13000 13000 0 0
24 10 Exception Yes 200 200 0 0
25 3 System Critical Yes 1000 1000 0 0
26 10 NFL SAMPLED DATA Yes 200 200 0 0
27 2 Low Latency Yes 5400 5400 0 0
28 10 EGR Exception Yes 200 200 0 0
29 5 Stackwise Virtual OOB Yes 8000 8000 0 0
30 9 MCAST Data Yes 400 400 0 0
31 3 Gold Pkt Yes 1000 1000 0 0
دعنا نجمع الإخراج عدة مرات لضمان زيادة العدد الذي تم إسقاطه أثناء الإصدار:
C9500-2#sh platform hardware fed switch active qos queue stats internal cpu policer | in Sw forwarding
14 13 Sw forwarding Yes 1000 1000 47046906560 735107915
14 13 21 Sw forwarding Yes
13 system-cpp-police-sw-forward : Sw forwarding/ LOGGING/ L2 LVX Data Pack/ Transit Traffic/
21 system-cpp-police-ios-feature : ICMP GEN/ BROADCAST/ ICMP Redirect/ L2 LVX Cont Pack/ Proto Snooping/ Punt Webauth/ MCAST Data/ Transit Traffic/ DOT1X Auth/ Sw forwarding/ LOGGING/ L2 LVX Data Pack/ Forus traffic/ Forus Address resolution/ MCAST END STATION / Openflow/ Exception/ EGR Exception/ NFL SAMPLED DATA/ RPF Failed/
C9500-2#
!
C9500-2#sh platform hardware fed switch active qos queue stats internal cpu policer | in Sw forwarding
14 13 Sw forwarding Yes 1000 1000 47335535936 739617752
14 13 21 Sw forwarding Yes
13 system-cpp-police-sw-forward : Sw forwarding/ LOGGING/ L2 LVX Data Pack/ Transit Traffic/
21 system-cpp-police-ios-feature : ICMP GEN/ BROADCAST/ ICMP Redirect/ L2 LVX Cont Pack/ Proto Snooping/ Punt Webauth/ MCAST Data/ Transit Traffic/ DOT1X Auth/ Sw forwarding/ LOGGING/ L2 LVX Data Pack/ Forus traffic/ Forus Address resolution/ MCAST END STATION / Openflow/ Exception/ EGR Exception/ NFL SAMPLED DATA/ RPF Failed/
C9500-2#
!
C9500-2#sh platform hardware fed switch active qos queue stats internal cpu policer | in Sw forwarding
14 13 Sw forwarding Yes 1000 1000 47666441088 744788145
14 13 21 Sw forwarding Yes
13 system-cpp-police-sw-forward : Sw forwarding/ LOGGING/ L2 LVX Data Pack/ Transit Traffic/
21 system-cpp-police-ios-feature : ICMP GEN/ BROADCAST/ ICMP Redirect/ L2 LVX Cont Pack/ Proto Snooping/ Punt Webauth/ MCAST Data/ Transit Traffic/ DOT1X Auth/ Sw forwarding/ LOGGING/ L2 LVX Data Pack/ Forus traffic/ Forus Address resolution/ MCAST END STATION / Openflow/ Exception/ EGR Exception/ NFL SAMPLED DATA/ RPF Failed/
C9500-2#
كما يمكنك أن ترى، فإن العدد الذي تم إسقاطه يتزايد، ويتم إسقاط حركة مرور SSH (حزمة TCP syn) هنا.
الآن إذا لم تكن مدركا من خلال أي واجهة/SVI أنت تتلقى هذا التدفق من حركة المرور، لديك أمر معين للمساعدة.
C9500-2#show platform software fed switch active punt rates interfaces
Punt Rate on Interfaces Statistics
Packets per second averaged over 10 seconds, 1 min and 5 mins
===========================================================================================
| | Recv | Recv | Recv | Drop | Drop | Drop
Interface Name | IF_ID | 10s | 1min | 5min | 10s | 1min | 5min
===========================================================================================
TenGigabitEthernet1/0/37 0x00000042 1000 1000 1000 0 0 0
-------------------------------------------------------------------------------------------
C9500-2#
يوفر أمر show platform software fed تبديل واجهات أسعار الاختبار النشطة قائمة الواجهات المسؤولة عن تلقي كمية هائلة من حركة المرور التي يتم انتقاؤها إلى وحدة المعالجة المركزية.
يمكنك رؤية TE1/0/37 هنا بشكل واضح، وهي الواجهة التي تحصل من خلالها على حركة مرور TCP.
الآن، إذا كنت تريد أن ترى مقدار حركة المرور التي تضرب كل قوائم انتظار CoPP Policer (والتي يتم إستلامها على الواجهة السابقة)، يمكنك إستخدام:
show platform software fed switch active punt rate interfaces <IF_ID من الإخراج أعلاه>
دعونا نلقي نظرة:
C9500-2#show platform software fed switch active punt rates interfaces 0x42
Punt Rate on Single Interfaces Statistics
Interface : TenGigabitEthernet1/0/37 [if_id: 0x42]
Received Dropped
-------- -------
Total : 2048742 Total : 0
10 sec average : 1000 10 sec average : 0
1 min average : 1000 1 min average : 0
5 min average : 1000 5 min average : 0
Per CPUQ punt stats on the interface (rate averaged over 10s interval)
==========================================================================
Q | Queue | Recv | Recv | Drop | Drop |
no | Name | Total | Rate | Total | Rate |
==========================================================================
0 CPU_Q_DOT1X_AUTH 0 0 0 0
1 CPU_Q_L2_CONTROL 7392 0 0 0
2 CPU_Q_FORUS_TRAFFIC 0 0 0 0
3 CPU_Q_ICMP_GEN 0 0 0 0
4 CPU_Q_ROUTING_CONTROL 0 0 0 0
5 CPU_Q_FORUS_ADDR_RESOLUTION 0 0 0 0
6 CPU_Q_ICMP_REDIRECT 0 0 0 0
7 CPU_Q_INTER_FED_TRAFFIC 0 0 0 0
8 CPU_Q_L2LVX_CONTROL_PKT 0 0 0 0
9 CPU_Q_EWLC_CONTROL 0 0 0 0
10 CPU_Q_EWLC_DATA 0 0 0 0
11 CPU_Q_L2LVX_DATA_PKT 0 0 0 0
12 CPU_Q_BROADCAST 0 0 0 0
13 CPU_Q_CONTROLLER_PUNT 0 0 0 0
14 CPU_Q_SW_FORWARDING 2006390 1000 0 0 -----> We can see high amount of traffic hitting the Sw forwarding queue.
15 CPU_Q_TOPOLOGY_CONTROL 0 0 0 0
16 CPU_Q_PROTO_SNOOPING 0 0 0 0
17 CPU_Q_DHCP_SNOOPING 0 0 0 0
18 CPU_Q_TRANSIT_TRAFFIC 0 0 0 0
19 CPU_Q_RPF_FAILED 0 0 0 0
20 CPU_Q_MCAST_END_STATION_SERVICE 0 0 0 0
21 CPU_Q_LOGGING 34960 0 0 0
22 CPU_Q_PUNT_WEBAUTH 0 0 0 0
23 CPU_Q_HIGH_RATE_APP 0 0 0 0
24 CPU_Q_EXCEPTION 0 0 0 0
25 CPU_Q_SYSTEM_CRITICAL 0 0 0 0
26 CPU_Q_NFL_SAMPLED_DATA 0 0 0 0
27 CPU_Q_LOW_LATENCY 0 0 0 0
28 CPU_Q_EGR_EXCEPTION 0 0 0 0
29 CPU_Q_FSS 0 0 0 0
30 CPU_Q_MCAST_DATA 0 0 0 0
31 CPU_Q_GOLD_PKT 0 0 0 0
--------------------------------------------------------------------------
تجميع المخرجات عدة مرات في فواصل زمنية قصيرة جدا:
C9500-2#show platform software fed switch active punt rates interfaces 0x42 | in SW_FORWARDING
14 CPU_Q_SW_FORWARDING 2126315 1000 0 0
C9500-2#
C9500-2#show platform software fed switch active punt rates interfaces 0x42 | in SW_FORWARDING
14 CPU_Q_SW_FORWARDING 2128390 1000 0 0
C9500-2#
C9500-2#show platform software fed switch active punt rates interfaces 0x42 | in SW_FORWARDING
14 CPU_Q_SW_FORWARDING 2132295 1000 0 0
C9500-2#
وهذا يوضح بوضوح أن قائمة انتظار إعادة توجيه البرامج قد تم إغلاقها.
بمجرد إزالة الأمر ip tcp adjust-mss
من TE1/0/37، أو إذا قمت بإيقاف حركة مرور TCP هذه، سيتم إعادة إنشاء وصول SSH من C9500-1 إلى C9200 على الفور.
فلنلق نظرة على جلسة SSH بعد إيقاف تشغيل C9500-2 TE1/0/37:
C9500-1#ssh -l admin 10.10.20.1
Password:
يمكنك ملاحظة إستعادة وصول SSH مرة أخرى.
وبالتالي، يمكنك ربط بطء TCP هنا (حظر وصول SSH) بسبب المقدار الكبير لحركة مرور TCP في الشبكة، باستخدام ضبط TCP MSS.
المراجعة | تاريخ النشر | التعليقات |
---|---|---|
1.0 |
02-Sep-2024 |
الإصدار الأولي |