Encapsulation

Encapsulation เป็นการจัดเตรียมข้อมูลให้มี่ความเหมาะสมสำหรับการสื่อสารของ protocol ในแต่ละระดับชั้น เปรียบเสมือนเรามีจดหมายฉบับหนึ่งที่ต้องการส่งไปให้เพื่อนที่อยู่ต่างประเทศ เราจะต้องทำการนำจดหมายนี้พับใส่ซองและเขียนที่อยู่ของเพื่อนลงบนหน้าซอง การนำจดหมายใส่ซองและเขียนที่อยู่ปลายทางนี้ก็คือการทำ encapsulation นั่นเอง และเมื่อเรานำจดหมายนี้ไปใส่ไว้ในตู้จดหมายและบุรุษไปรษณีย์มาทำการเก็บจดหมายนี้ไปที่ที่ทำการไปรษณีย์ ที่ทำการไปรษณีย์ทำการนำจดหมายทั้งหมดมัดรวมกันแล้วใส่ไว้ในถุงเมล์อากาศแล้วทำการปิดฉลากระบุที่ทำการไปรษณีย์ของเมืองในประเทศปลายทางที่เราต้องการส่ง  การนำจดหมายมัดใส่ถุงเมล์และทำการปิดฉลากระบุก็คือการทำ encapsulation ในอีกระดับหนึ่งของอีก protocol ที่อยู่ต่ำกว่า ซึ่งเราจะเห็นว่าใน protocol แต่ละระดับชั้นจะใช้ข้อมูลเพื่อระบุปลายทางไม่เหมือนกัน พนักงานขนส่งเมล์อากาศจะใช้ฉลากที่อยู่บนถุงเมล์ระบุที่ทำการไปรษณีย์ปลายทาง ในขณะที่บุรุษไปรษณีย์จะใช้ที่อยู่บนซองจดหมายในการระบุปลายทาง 

1. จากในรูปจะเห็นว่าเมื่อ process ที่อยู่บน application layer ของ host หนึ่ง ต้องการจะส่งข้อมูลหรือ message ไปให้อีก host หนึ่ง protocol บน application layer ก็จะทำการส่ง  message นั้นผ่านทาง socket ลงมาให้กับ transport layer

2. transport layer เมื่อได้รับ message แล้ว protocol บน transport layerก็จะทำการตรวจสอบ  message นั้น  ถ้า message  มีขนาดยาวมาก protocol   ก็จะทำการแบ่ง message ออกเป็นหน่วยเล็ก ๆ เรียกว่า data chunk  แล้วทำการ   encapsulate Data chunk นั้นไว้ใน packet ที่เรียกว่า segment ซึ่งที่ header ของ segment นั้น ก็จะระบุหมายเลข port ของ host ต้นทางและ host ปลายทาง เพื่อใช้ในการระบุที่อยู่ของ process ที่เป็นผู้รับข้อมูลบน host นั้น แล้วทำส่งต่อลงไปให้กับ network layer ต่อไป

3. เมื่อ network layer ได้รับ segment แล้ว ก็จะทำการ Encapsulate segment นั้นไว้ใน packet ที่เรียกว่า datagram ซึ่งบน header ของ datagram ก็มีการระบุหมาย IP ของ host ปลายทาง เพื่อใช้ในการระบุที่อยู่ของ host ที่เป็นผู้รับข้อมูลนั้น แล้วทำการส่งต่อลงไปให้กับ link layer

4. link layer เมื่อได้รับ datagram แล้วก็จะทำการ encapsulate datagram นั้นไว้ใน packet ที่เรียกว่า frame โดยบน header ของ frame ก็จะมีการระบุ mac address ของ node ถัดไปที่จะเป็นผู้รับข้อมูล จากนั้น link layer ก็จะทำการส่งต่อ frame ลงไปให้กับ physical later

5.  physical layer เมื่อได้รับ frame แล้วก็จะทำการ transmiss frame นั้นทีละ bit ออกไปยัง link ที่เชื่อมต่อเข้ากับ internet

6. เมื่อ packet เดินทางมาถึง switch (ดูรูป) physical layer ก็จะทำการรับข้อมูลทีละ bit จนได้ครบทั้ง frame แล้ว ก็จะทำการส่งต่อ frame นั้นขึ้นไปบน link layer เนื่องจาก switch ไม่มี network layer ดังนั้น link layer จะทำการตรวจสอบ mac address ของ node ปลายทางที่ต้องการส่งแล้วทำการส่งต่อไปยัง node ตามที่อยู่ mac address ที่ระบุไว้ (ซึ่ง node ต่อไปก็คือ router ดังในรูป)

7. เมื่อ packet เดินทางมาถึง router (ดูรูป) physical layer ก็จะทำการรับข้อมูลทีละ bit จนได้ครบทั้ง frame แล้ว ก็จะทำการส่งต่อ Frame นั้นขึ้นไปบน link layer ซึ่ง link layer จะทำการ decapsulate fame ได้เป็น datagram แล้วทำการส่งต่อขึ้นไปให้ network layer จากนั้น network layer จะทำการตรวจสอบ ip address ของ node หรือ host ปลายทางที่ระบุบน datagram จากนั้นจึงทำการเลือกเส้นทางส่งข้อมูลที่เหมาะสมแล้วส่งข้อมูลไปตาม node หรือ host ที่ระบุไว้ตาม ip address

8. เมื่อ packet เดินทางมาถึง host ปลายทาง (ดูรูป)  physical layer ก็จะทำการรับข้อมูลทีละ bit จนได้ครบทั้ง frame แล้ว ก็จะทำการส่งต่อ Frame นั้นขึ้นไปบน link layer ซึ่ง link layer จะทำการ decapsulate fame ได้เป็น datagram แล้วทำการส่งต่อขึ้นไปให้ network layer จากนั้น network layer จะทำการ decapsulate datagram ได้เป็น segment แล้วทำการส่งต่อขึ้นไปให้กับ link layer ซึ่ง link layer จะทำการตรวจสอบ port ปลายทางของ segment ว่าต้องส่งไปที่ process ใด แล้วจึงทการส่ง segment นั้นขึ้นไปให้กับ process ปลายทาง  เป็นอันสิ้นสุดกระบวนการ decapsulation

UDP ยู ดี พี หรือ User Datagram Protocol ยูสเซอร์ ดาต้าแกรม โปรโตคอล คืออะไร

  UDP เป็นการส่งข้อมูลที่ไม่มีการยืนยันการรับส่งข้อมูล คือผู้ส่งไม่สามารถรู้ได้ว่าข้อมูลได้ถึงผู้รับแล้วหรือไม่ เราจะต้องเขียนการตรวจสอบข้อมูลเอาเอง เช่น ถ้าผมส่งข้อมูลไป ถ้าฝั่งที่รับข้อมูลได้รับข้อมูลแล้ว ก็ให้ตอบกลับมาให้ผม ผมก็ทราบแล้วว่าข้อมูลไปถึง แต่ถ้าไม่มีการตอบกลับภายในระยะเวลาที่ผมกำหนด ก็ให้แจ้งว่าผู้รับไม่ได้รับข้อความ

    UDP อยู่ใน Transport layer (ทรานสโพท เลเยอร์) ทำหน้าที่จัดการและควบคุมการรับส่งข้อมูล แต่ไม่มีกลไกความคุมการรับ ส่งข้อมูลให้มีเสถียรภาพและเชื่อถือได้ unreliable (อันรีไลเบิ้ล) และ connectionless (คอนเนคชั่นเลทด์) โดยปล่อยให้เป็นหน้าที่ของแอพพลิเคชั่นเลเยอร์ แต่ UDP มีข้อได้เปรียบในการส่งข้อมูลได้ทั้งแบบ unicast (ยูนิคาสต์), multicast (มัลติคาสต์) และ broadcast (บรอดคาสต์) อีกทั้งยังทำการติดต่อสื่อสารได้เร็วกว่า TCP (ที ซี พี) เนื่องจาก TCP ต้องเสีย overhead (โอเวอร์เฮด) ให้กับขั้นตอนการสื่อสารที่ทำให้ TCP มีความน่าเชื่อถือในการรับส่งข้อมูลนั่นเอง 

จุดเด่น

     UDP ซึ่งมีจุดเด่นที่ความเร็ว ขนาดเล็ก และไม่มีการทำงานเกี่ยวการส่งข้อมูลซ้ำหรือคำนวณอัตราการส่งข้อมูล ซึ่งจะเหมาะกับการส่งข้อมูลแบบ realtime (เรียลไทม์) ซึ่งข้อมูลที่สูญหายบางส่วนหรือข้อมูลที่เกิด delay (ดิเลย์) จะถูกละความสนใจไปมันจะส่งข้อมูลได้เร็วกว่า แบบ TCP และจะไม่มีการสร้าง Connection (คอนเนคชั่น) เกิดขึ้น ทำให้ข้อมูลที่วิ่งในเครือข่ายมีน้อยลงด้วยเป็นการสื่อสารแบบ Connectionless คือข้อมูลจะถูกแบ่งเป็นชิ้นๆ ตามที่อยู่ปลายทาง แล้วผ่านตัวกลางไปยังปลายทาง อาจจะใช้เส้นทางคนละเส้นทางกันก็ได้ รวมทั้งข้อมูลแต่ละชิ้นอาจจะถึงก่อนหลังแตกต่างกันไปได้ด้วย ทำให้การเริ่มต้นส่งทำได้รวดเร็ว ไม่ต้องเสียเวลาสร้าง Connection

Reference : en.wikipedia.org/wiki/User_Datagram_Protocol

Port Multicast TV SG300/SG500

Objective

A Virtual Local Area Network (VLAN) allows you to logically segment a Local Area Network (LAN) into different broadcast domains. In scenarios where sensitive data may be broadcast on a network, VLANs can be created to enhance security by designating a broadcast to a specific VLAN. Only users that belong to a VLAN are able to access and manipulate the data on that VLAN. VLANs can also be used to enhance performance by reducing the need to send broadcasts and multicasts to unnecessary destinations.

Multicast TV VLANs enable multicast transmissions to subscribers who are not on the same data VLAN without replicating the multicast transmission frames for each subscriber VLAN. Subscribers who are not on the same data VLAN and are connected to the device with different VLAN ID membership can share the same multicast stream by joining the ports to the same Multicast VLAN ID.

Port Multicast VLAN Membership connects a port configured for customer services to a Multicast TV VLAN. Configuration of Customer Port Multicast TV VLAN Membership helps maintain security by separating the transmissions between the source and receiver. Multicast VLAN configuration enables multicast traffic from a source VLAN to be shared with subscriber VLAN.

This article provides instructions on how to configure Customer Port Multicast VLAN Membership on a switch.

Configure Customer Port to Multicast VLAN Membership on the Switch

VLAN Management > Customer Port Multicast TV VLAN > Port Multicast VLAN Membership

Multicast VLAN Membership
Multicast VLAN Membership

Storm Control Multicast

Storm Control

When Broadcast, unknown Multicast or unknown Unicast frames are received, they are duplicated, and a copy is sent to all possible egress ports. This means that in practice they are sent to all ports belonging to the relevant VLAN. In this way, one ingress frame is turned into many, creating the potential for a storm.

Storm protection enables you to limit the number of frames entering the switch and to define the types of frames that are counted towards this limit

  1. Click Security > Storm Control.
  2. Configure the following parameters:
  3. Frame Configuration—Select Included (including preamble and IFG 20Bytes)to count the Broadcast, unknown Multicast, or unknown Unicast frames, or select Excluded (excluding preamble and IFG 20Bytes) to not count the Broadcast, unknown Multicast, or unknown Unicast frames.
  4. Storm Control Rate Threshold Mode—Select the mode of the rate threshold: Packets per second or Kbits/sec.
  5. Click Apply. The storm control parameters are defined, and the Running Configuration is updated.
  6. To modify the storm control settings for a port, select the desired port and click Edit.
  7. Enter the following information:
  8. Interface—Select the port to be defined.
  9. Storm Control—Enable or disable storm control on the port.
  10. Unknown Unicast—Enable or disable storm control for unknown Unicast traffic. It will count unknown Unicast traffic towards the bandwidth threshold.
  11. Storm Control Rate Threshold—Enter the maximum rate at which unknown Unicast packets can be forwarded. The default for this threshold is 10,000.
  12. Unknown Multicast—Enable or disable storm control for unknown Multicast traffic. It will count unknown Multicast traffic towards the bandwidth threshold.
  13. Storm Control Rate Threshold—Enter the maximum rate at which unknown Multicast packets can be forwarded. The default for this threshold is 10,000.
  14. Broadcast—Enable or disable storm control for Broadcast traffic. It will count Broadcast traffic towards the bandwidth threshold.
  15. Storm Control Rate Threshold—Enter the maximum rate at which Broadcast packets can be forwarded. The default for this threshold is 10,000.
  16. Action—Select the action when the rate of Broadcast, unknown Multicast, or unknown Unicast frames is higher than the user-defined threshold. The options are:
  17. Drop—Discard the frames received beyond the threshold.
  18. Shutdown—Shut down the port.
  19. Click Apply. The port’s storm control settings are modified, and the Running Configuration is updated.

.

How to Configure Cisco SG300/SG500 Multicast

Whenever changes are made to Cisco SG the running configuration must be copied and saved as the startup configuration or the changes will not persist if the switch is rebooted.

running configuration file which is volatile and is not retained between reboots.
Copy/Save Configuration

Configuring IGMP Snooping

IGMP Snooping must be enabled on the switch to manage the flow of registered multicast traffic. Once IGMP Snooping is enabled multicast groups will be registered on the switch when receivers request to join multicast groups. Multicast traffic destined for registered multicast groups will then be forwarded only to interfaces on which group-member receivers are attached.

1) Under Multicast > Properties enable the Bridge Multicast Filtering Status setting (disabled by default) and click Apply:

 IGMP Snooping is enabled multicast groups will be registered on the switch
IGMP Snooping

2) Under Multicast > IPv4 Multicast Configuration > IGMP Snooping enable the IGMP Snooping Status setting (disabled by default) and click Apply:

IGMP Snooping Status setting (disabled by default)
IPv4 Multicast Configuration

3) Under Multicast > IPv4 Multicast Configuration > IGMP Snooping select the VLAN you want to enable IGMP Snooping on and click Edit:

 IGMP Snooping select the VLAN
VLAN you want to enable IGMP Snooping

4) In the Edit IGMP Snooping Settings popup window (popups need to be enabled in the browser) enable the IGMP Snooping Status setting and click Apply:

IGMP Snooping Status
IGMP Snooping Status 

5) Confirm that the IGMP Snooping Operation Status shown for the VLAN under Multicast > IPv4 Multicast Configuration > IGMP Snooping now says “Enabled”:

IGMP Snooping Status
IGMP Snooping Operation Status

6) Under Multicast > Unregistered Multicast configure all interfaces for Filtering (set to Forwarding by default) and click Apply. This prevents unregistered multicast (i.e., streams from encoded that are not being requested by any decoders) from flooding to any interfaces.

Unregistered Multicast
Unregistered Multicast

Configuring IGMP Querier

Each VLAN that manages multicast traffic with IGMP Snooping requires an IGMP Querier. The IGMP Querier periodically queries the VLAN to confirm that receivers want to maintain memberships with multicast groups. If multiple Queriers are enabled on the same VLAN an automatic election process will occur – the Querier with the lowest IP will win and all other Queriers will stop sending queries. The position of the Querier in a multi-switch environment should be carefully considered, especially for a high-bandwidth multicast application, as all multicast traffic always flows towards the Querier. Without a Querier the multicast group memberships on IGMP Snooping switches will timeout after a set period of time (typically 260 seconds) requiring the receivers to then rejoin the multicast group in order to start receiving multicast traffic again.

1) Under Multicast > IPv4 Multicast Configuration > IGMP Snooping confirm that the IGMP Querier Status setting is enabled (enabled by default). If it is disabled, enable it:

 IGMP Querier Status
IGMP Querier Status

2) Under Multicast > IPv4 Multicast Configuration > IGMP Snooping select the VLAN you want to enable IGMP Querier on and click Edit:

IGMP Querier

3) In the Edit IGMP Snooping Settings popup window enable the IGMP Querier Status setting (disabled by default), confirm that the IGMP Querier Version setting is configured for v2 (v2 is default), and click Apply.

 Querier Status
Querier Status

Configuring Non-Querier in Multi-Switch Environment

Any Cisco SG switches in a multi-switch IGMP Snooping environment that are not intended to be the Querier should still be configured to enable IGMP Snooping. In addition it is important that the non-Querier switch knows which interface connects to the Querier so multicast traffic can be forwarded appropriately – all multicast traffic needs to flow towards the Querier via the Multicast Router (mrouter) Port. The Multicast Router Port can be dynamically learned (by listening for Queries) or statically assigned. By default, Cisco SG will forward unregistered multicast traffic to all interfaces and the filtering/forwarding of unregistered multicast traffic is a per-interface setting. If the unregistered multicast filtering setting is applied to an interface which is also the Multicast Router Port the Cisco SG will not forward unregistered traffic to the mrouter port. This behaviour of not forwarding all multicast traffic to the Querier is at odds with the requirements defined in the IGMP standard in that all multicast traffic should always flow towards the Querier so can cause issues if sharing multicast traffic between sources and receivers connected to different switches in a multi-switch environment.

1) Under Multicast > IPv4 Multicast Configuration > IGMP Snooping disable the IGMP Querier Status setting (enabled by default) and click Apply. Disabling this global setting overrides the IGMP Querier Status settings of the individual VLAN’s:

 IGMP Snooping disable
IGMP Snooping disable

2) Under Multicast > Multicast Port confirm that the switch has discovered the Querier on one of the interfaces, listed as Dynamic. Note that it may take some time for this multicast router port to be discovered:

 Multicast Router Port
Multicast Router Port

The Multicast Router Port can be statically configured by selecting “Static” however this configuration should only be required recommended if switches from different vendors are used in the same network environment and they are not able to auto-discover the IGMP Querier.

If the Multicast Router Port is not able to be dynamically discovered this could indicate that there is no IGMP Querier configured on the network. In a single-switch environment the IGMP Querier feature must be enabled in order to prevent group-membership timeouts but in a multi-switch environment an IGMP Querier is also required in order for multicast traffic to flow from one IGMP Snooping enabled switch to another.

3) Now that the Multicast Router Port has been configured (either dynamically discovered or statically assigned) under Multicast > Unregistered Multicast configure the same interface to Forwarding. All interfaces that are not Multicast Router Ports should be set toFiltering:

Unregistered Multicast
Unregistered Multicast

This is done because the Unregistered Multicast setting on the Cisco SG300/SG500 switches overrides the default behaviour of how switches are supposed to handle the flow of multicast traffic to Multicast Router Ports in that all multicast traffic should always be forwarded to the Multicast Router Port (i.e., towards the Querier).

Configuring Immediate Leave

When a receiver leaves a multicast group the traffic flowing to the interface destined for that group does not stop straight away. IGMP allows time for the Querier to confirm that other receivers, possibly attached to the same interface and joined to the same multicast group, do not want to maintain a connection to the group once a receiver leaves the group before the forwarding of traffic for that group on that interface ceases. For high-bandwidth multicast applications, where the stream size can easily exceed half the available bandwidth, the Immediate Leave feature should be enabled to prevent data saturation on interfaces where a receiver leaves one group and then immediately joins another group. If you are in a multi switch environment, Immediate Leave feature should be disabled on the core switch, this will prevent drop outs of video on downstream switches if two end points are on the same stream. 

1) Under Multicast > IPv4 Multicast Configuration > IGMP Snooping select the VLAN you want to enable IGMP Snooping on and click Edit:

IGMP Snooping

2) In the Edit IGMP Snooping Settings popup window enable the Immediate Leave setting and click Apply:

IGMP Snooping
IGMP Snooping