2.16.2558

SIP

SIP : Session Initiation Protocol



SIP หมายถึง โพรโทคอลการเริ่มตนเชื่อมตอวงจรสนทนา (Session Initiation Protocol) ตาม RFC 3261 ของ IETF สําหรับเปนโพรโทคอลควบคุมการใหสัญญาณแบบระดับเดียวกัน (peer-to-peer)สําหรับเปด ปรับ และปดการเชื่อมตอวงจรสนทนา (session) ตาง ๆ อาทิโทรศัพทผานโครงขายอินเทอรเน็ตและการประชุมทางเสียงผานโครงขายอินเทอรเน็ต เปนตน

Credit : http://standard1.nbtc.go.th/getattachment/5aca8579-db09-464d-933d-3c9a5608a178/6201.aspx

-SIP ก็เป็น text-based protocol ที่ใช้ในการสร้างการเชื่อมต่อระหว่างโปรแกรมที่อยู่คนละเครื่องผ่านเครือข่าย (call setup & signaling) โดยตัวมันเองเป็น stateless (ในขณะที่โปรโตคอลอย่าง H.323 เป็น stateful ที่มีความซับซ้อนกว่า) ตัวอย่างการใช้ SIP คือ ใช้ในการ initiate session ในการส่งวีดีโอข้ามเครื่อง หรือในการสร้างคอนเนคชั่นในระหว่างการต่อสายโทรศัพท์ เนื่องจาก SIP เป็นโปรโตคอลในระดับ application layer (ในมุมมองของ OSI Network Stack) มันสามารถใช้บน network/transport protocol ใดๆก็ได้ เช่น ผ่านเวป (ด้วย TCP หรือ UDP) ผ่านระบบเครือข่ายมือถือ ฯลฯ
-ตัว SIP เน้นเฉพาะการเชื่อมต่อระบบสองฝั่งเท่านั้น พอต่อได้แล้ว จะรับส่งข้อมูลกันยังไงต่อ ขึ้นอยู่กับโปรโตคอลอื่นที่สองฝั่งใช้อีกที ซึ่งส่วนนี้จะไม่เกี่ยวกับ SIP แล้วครับ 

Credit : http://www.narisa.com/forums/index.php?showtopic=17004

บทนำ

SIP เป็นโปรโตคอลที่ใช้ Create, Modify และ Terminate Session ในการติดต่อสื่อสาร ซึ่งมีการนำไปใช้ใน Internet Telephone Call, Multimedia Distribution, และ Multimedia Conference โปรโตคอลนี้ออกแบบโดย Henning Schulzrinne จากมหาวิทยาลัยโคลัมเบียและ Mark Handley จากมหาวิทยาลัยลอนดอนในปี 1996 (พ.ศ.2539) ต่อมาในเดือนพฤศจิกายนปี 2000 (พ.ศ.2543) ก็ได้รับการยอมรับจาก 3GPP และกลายเป็นส่วนหนึ่งของสถาปัตยกรรม IMS (IP Multimedia Subsystem), Voice over IP รวมถึง H.323 และอื่น ๆ

IMS เป็นแนวคิดเกี่ยวกับสถาปัตยกรรมของการให้บริการ IP Multimedia แก่ผู้ใช้ ซึ่งเป็นส่วนหนึ่งในการพัฒนาเครือข่ายมือถือของ GSM โดยเริ่มมาจาก 3GPP R5 นำเสนอวิธีส่ง Internet Services ผ่าน GPRS ต่อมาได้มีการปรับปรุงโดย 3GPP, 3GPP2, และ TISPAN เพื่อให้ครอบคลุมถึง Wireless LAN, CDMA2000, และ Fix Line โดยนำโปรโตคอลของ IETF มาใช้ เช่น SIP

SIP จะมีลักษณะทั่วไปคือ
- ขนาดเล็ก เพราะกำหนดวิธีติดต่อไว้เพียง 6 วิธีเพื่อลดความซับซ้อน
- มีความเป็นอิสระ สามารถใช้งานกับ UDP, TCP, ATM และอื่น ๆ ได้
- เป็นข้อความที่มนุษย์สามารถอ่านได้

การออกแบบโปรโตคอล

SIP client จะใช้ TCP หรือ UDP พอร์ต 5060 เชื่อมต่อกับ SIP server และ SIP อื่น ๆ ซึ่ง SIP จะใช้สำหรับตั้งค่าและยกเลิก Voice หรือ Video call แต่ก็สามารถนำไปใช้กับงานกับระบบอื่นที่ต้องการเปิด Session รวมถึง Event Subscription และ Notification ได้ การสื่อสารโดยใช้ภาพและเสียงสามารถทำได้โดยแบ่งโปรโตคอล Session ออกจากกัน เช่น RTP (Real-time Transport Protocol)

RTP ใช้กำหนดรูปแบบ packet ในการส่งภาพและเสียงผ่านอินเตอร์เน็ต ถูกพัฒนาโดย Audio-Video Transport Working Group ของ IETF และได้ตีพิมพ์ครั้งแรกในปี 1996 (พ.ศ.2539) โดย RTP จะไม่มีพอร์ต TCP หรือ UDP มาตรฐานในการสื่อสาร แต่จะใช้พอร์ต UDP ที่เป็นเลขคู่ในการสื่อสารและพอร์ต UDP เลขคี่ถัดไปเป็น RTP Control Protocol (RTCP) เลขพอร์ตมักจะอยู่ระหว่าง 16384-32767 RTP สามารถรับส่งข้อมูลอะไรก็ได้แบบ real-time เช่น ภาพและเสียง โดยใช้โปรโตคอล SIP ในการตั้งค่าและยกเลิก

SIP จะเป็นโปรโตคอลที่ใช้ส่งสัญญาณและตั้งค่าในระบบ IP สามารถใช้งานร่วมกับระบบโทรศัพท์ PSTN (Public Switched Telephone Network) ได้ ซึ่งมาตรฐาน SIP ไม่ได้ระบุไว้ SIP ทำได้เพียงสางสัญญาณและตั้งค่า อย่างไรก็ตาม SIP สามารถใช้งานในระบบเครือข่ายได้ เช่น Proxy Server และ User Agent ซึ่งจะเหมือนกับการทำงานของโทรศัพท์ คือ หมุนเบอร์, ทำให้โทรศัพท์ปลายทางส่งเสียง, ฟังเสียงตอบรับหรือสัญญาณไม่ว่าง

SIP ทำให้ระบบโทรศัพท์มีความสามารถในขั้นตอนโทรออกมากขึ้น ดูได้จาก Signalling System 7 (SS7) โดย SS7 จะเป็นโปรโตคอลที่รวมศูนย์, ใช้กับระบบรวมศูนย์ที่ซับซ้อน, และใช้งานกับเครื่องลูกข่ายที่ไม่เก่ง (โทรศัพท์บ้าน) SIP เป็นโปรโตคอลแบบ Peer-to-Peer ซึ่งใช้กับเครือข่ายที่ไม่ซับซ้อนและเครื่องลูกค้ามีความสามารถสูง

แม้ VoIP จะมีโปรโตคอลส่งสัญญาณเยอะอยุ่แล้ว แต่ SIP ก็ช่วยสร้างเครื่องหลักในการสื่อสารแบบ IP ได้มากกว่าระบบโทรคมนาคม SIP จะเป็นมาตรฐานของ IETF ขณะที่ H.323 เป็นโปรโตคอลของ ITU ซึ่งทั้งสององค์กรก็ให้เกียรติกัน

SIP สามารถทำงานร่วมกับโปรโตคอลอื่นได้โดยจะสร้างสัญญาณให้ Session ของการติดต่อสื่อสาร SIP จะทำงานเป็นพาหะของ Session Description Protocol (SDP) ใช้อธิบายรายละเอียดของเนื้อหาที่จะส่ง เช่น หมายเลขพอร์ตที่ใช้, Codec ที่ต้องการ

SIP จะคล้ายกับ HTTP เช่น การรับส่งข้อมูลใช้ภาษาที่มนุษย์อ่านได้, รหัสบอกสถานะจะคล้าย ๆ กัน บางคนกล่าวว่า SIP เป็นโปรโตคอลแบบ stateless ซึ่งสามารถตรวจสอบความผิดพลาดและเพิ่มเติมความสามารถได้มากกว่าโปรโตคอลแบบ stateful ซึ่งโปรโตคอลแบบ stateless จะส่งคำสั่งได้อย่างอิสระ โดยไม่ต้องสนใจว่าคำสั่งก่อนหน้าคือคำสั่งอะไร ในขณะที่โปรโตคอลแบบ stateful จะต้องมีการบันทึกสถานะการแลกเปลี่ยนข้อมูลไว้ตลอดเวลา


ส่วนประกอบของเครือข่าย SIP

Hardware ที่ใช้จะเหมือนกับโทรศัพท์บ้าน แต่ใช้ SIP และ RTP ในการสื่อสาร บางระบบจะใช้ Electronic Numbering (ENUM) หรือ DUDi ในการแปลงหมายเลขโทรศัพท์ให้เป็น SIP Address แล้วเรียก SIP อื่นในระบบเครือข่าย

ตัวอย่างโปรแกรมในปัจจุบันที่ใช้ SIP สื่อสาร เช่น Microsoft Windows Messenger, iChat AV, AIM ของ Apple ซึ่ง SIP จะอาศัย Proxy และอุปกรณ์เครือข่ายเพื่อทำงานแบบ peer-to-peer เหมือนระบบทั่วไป

SIP Request

RFC 3261 (SIP) มี 6 แบบ ได้แก่
- INVITE ใช้เมื่อ client ต้องการสร้าง session เพื่อติดต่อ
- ACK ใช้เมื่อ client ได้รับการตอบกลับจาก INVITE ภายในเวลาที่กำหนด
- BYE ใช้เมื่อต้องการสิ้นสุดการเชื่อมต่อ ซึ่งผู้ส่งและผู้รับสามารถส่งได้เหมือนกัน
- CANCEL ใช้เพื่อยุติการค้นหา แต่ไม่สามารถใช้ยกเลิกสายที่รับแล้วได้
- OPTIONS ใช้ตรวจสอบคุณสมบัติของ Server
- REGISTER ใช้ระบุ Address ของข้อมูล To ใน SIP Server

RFC 3262 เพิ่มความน่าเชื่อถือในการตอบกลับของ SIP
- PRACK

RFC 3265 เพิ่มเติม
- SUBSCRIBE แจ้ง Event ของ Notification จากผู้แจ้ง
- NOTIFY แจ้งเหตุการณ์ใหม่




SIP Response

1xx ข้อมูลการตอบกลับ / ข้อมูลทั่วไป

รหัสสถานภาพกลุ่มนี้หมายถึง "เครื่องให้บริการได้รับการร้องขอแล้ว สามารถดำเนินการต่อไปได้" ใช้เป็นข้อความตอบรับชั่วคราว ซึ่งจะประกอบด้วยส่วนหัว Status-Line กับส่วนหัวอื่น ๆ เพิ่มเติม และจบด้วยบรรทัดว่าง

- 100 กำลังพยายาม / 100 Continue
เครื่องให้บริการได้รับการร้องขอแล้ว และเครื่องลูกข่ายควรจะส่งเนื้อหาตามออกไปกับข้อความร้องขอ (ในกรณีที่เนื้อหาจำเป็นต้องส่งไปกับการร้องขอ เช่นข้อความร้องขอแบบ POST) ถ้าเนื้อหาในข้อความร้องขอมีขนาดใหญ่ การส่งข้อมูลไปยังเครื่องแม่ข่ายอาจเกิดการชะงัก การร้องขออาจถูกตัดไปเสียก่อนเพราะไม่มีส่วนหัวที่เหมาะสม ดังนั้นเพื่อให้เครื่องแม่ข่ายสามารถตรวจสอบได้ว่าการร้องขอนั้นจะเป็นที่ยอมรับได้หรือไม่ เครื่องลูกข่ายจะต้องส่งส่วนหัว Expect: 100-continue ไปในข้อความร้องขอครั้งแรก และตรวจสอบว่ารหัสสถานภาพที่ได้มาจากข้อความตอบรับเป็น 100 Continue ก่อนดำเนินการส่งข้อมูลต่อไป (หากล้มเหลว จะได้รับรหัสเป็น 417 Expectation Failed และหยุดดำเนินการส่งข้อมูล)


- 180 กำลังเรียก (ring) / 180 Ringing
- 181 กำลัง forward / 181 Call is being forwarded
- 182 กำลังเข้าคิว / 182 Queued
- 183 ความคืบหน้าของ session / 
183 Session Progress



2xx ได้รับการตอบกลับ / การร้องขอสำเร็จ

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

- 200 OK  (เน้น code นี้มาบ่อย) / 200 OK
เป็นรหัสตอบรับมาตรฐานสำหรับการร้องขอที่สำเร็จ ข้อความตอบรับที่แท้จริงอาจแตกต่างกันออกไปตามคำสั่งร้องขอที่ใช้ ในการร้องขอแบบ GET เนื้อหาในข้อความตอบรับจะเป็นเนื้อหาที่เกี่ยวข้องกับทรัพยากรที่ร้องขอ ส่วนในการร้องขอแบบ POST เนื้อหาในข้อความตอบรับจะเป็นการอธิบายทรัพยากรหรือผลลัพธ์จากการดำเนินการดังกล่าว เป็นต้น


- 201 Created
การร้องขอได้ดำเนินการแล้ว ซึ่งได้ผลลัพธ์เป็นทรัพยากรที่สร้างขึ้นใหม่บนเครื่องให้บริการ

- 202 ตกลง / 202 Accepted
การร้องขอได้รับแล้วเพื่อดำเนินการ แต่การดำเนินการนั้นยังไม่เสร็จสิ้น ซึ่งไม่จำเป็นต้องส่งการร้องขอใหม่ในช่วงเวลาดังกล่าว เพราะว่าเครื่องแม่ข่ายอาจยังไม่รับการร้องขอในขณะนั้น

3xx Redirect / การเปลี่ยนทาง

รหัสสถานภาพกลุ่มนี้หมายถึง "เครื่องลูกข่ายอาจต้องมีการกระทำอื่นเพิ่มเติม เพื่อที่จะทำการร้องขอนั้นให้สำเร็จ" แสดงว่าโปรแกรมตัวแทนผู้ใช้จำเป็นต้องมีการดำเนินการอื่นเพิ่มเติม ซึ่งอาจทำได้เองโดยไม่จำเป็นต้องโต้ตอบกับผู้ใช้ ถ้าคำสั่งร้องขอครั้งที่สองเป็น GET หรือ HEAD นอกจากนี้ตัวแทนผู้ใช้ไม่ควรเปลี่ยนทางมากกว่าห้าครั้ง เพราะว่าการทำเช่นนั้นอาจถูกพิจารณาว่าเป็นวงวนไม่รู้จบ

- 300 มีหลายตัวเลือก / 300 Multiple Choices

แสดงตัวเลือกสำหรับทรัพยากรให้เครื่องลูกข่ายเลือกตามที่ต้องการ ตัวอย่างเช่น รูปแบบที่แตกต่างกันสำหรับวิดีโอ รายชื่อไฟล์ที่มีส่วนขยายแตกต่างกัน หรือการแก้ความกำกวมความหมายของคำ

- 301 ย้ายเป็นการถาวร / 301 Moved Permanently

บอกให้เครื่องลูกข่ายทราบว่า การร้องขอครั้งนี้และครั้งต่อ ๆ ไปควรจะเปลี่ยนทางไปยังตัวระบุแหล่งทรัพยากรสากล (URI) ที่ให้ไว้ เครื่องแม่ข่ายจะไม่เป็นผู้เปลี่ยนทางให้

- 302 ย้ายเป็นการชั่วคราว / 302 Found

รหัสนี้นิยมใช้เป็นการเปลี่ยนทางบนหน้าเว็บมากที่สุด แต่ก็เป็นตัวอย่างหนึ่งในทางปฏิบัติที่ขัดกับมาตรฐาน แต่เดิมใน HTTP/1.0 วลีดังกล่าวใช้ว่า "Moved Temporarily" เพื่อเป็นการเปลี่ยนทางชั่วคราว (RFC 1945) แต่หลายเบราว์เซอร์กลับนำไปทำเป็นรหัส 303 See Other แทน ดังนั้นในรุ่น HTTP/1.1 จึงเพิ่มรหัส 303 และ 307 เข้าไปเพื่อแยกแยะพฤติกรรมการใช้งานทั้งสอง แล้วเปลี่ยนวลีเหตุผลของรหัสนี้เป็น "Found" อย่างไรก็ตาม เว็บแอปพลิเคชันและเฟรมเวิร์กส่วนใหญ่ก็ยังใช้รหัส 302 ในลักษณะเดียวกับรหัส 303

- 303 See Other

เนื้อหาที่ร้องขอสามารถพบได้จากตัวระบุในแหล่งอื่นด้วยคำสั่ง GET แต่ถ้าหากแหล่งอื่นนั้นใช้ PUT เครื่องลูกข่ายจะต้องถือว่าเครื่องแม่ข่ายได้รับข้อมูลแล้ว และการเปลี่ยนทางควรจะกระทำโดยส่งข้อความ GET แยกออกไปต่างหาก

- 304 Not Modified

ทรัพยากรที่ร้องขอยังไม่มีการปรับปรุงเพิ่มเติมหลังจากการร้องขอครั้งล่าสุด โดยปกติแล้วเครื่องลูกข่ายเอชทีทีพีจะส่งส่วนหัว If-Modified-Since มาด้วยเพื่อให้เครื่องแม่ข่ายเปรียบเทียบเวลา การใช้ส่วนหัวนี้ให้เป็นประโยชน์ช่วยลดแบนด์วิดท์ และลดการประมวลผลซ้ำซ้อนทั้งทางฝั่งแม่ข่ายและลูกข่าย


- 305 ใช้ Proxy / 305 Use Proxy
แจ้งไปยังเครื่องลูกข่ายว่าควรใช้พร็อกซี ตัวแทนผู้ใช้หลายโปรแกรม อาทิเบราว์เซอร์ของมอซิลลา [5] และอินเทอร์เน็ตเอกซ์พลอเรอร์ ยังดำเนินการกับรหัสตอบรับนี้ไม่ถูกต้อง ด้วยเหตุผลหลักในด้านความปลอดภัย

- 306 Switch Proxy

แจ้งไปยังเครื่องลูกข่ายว่าควรเปลี่ยนพร็อกซีที่ใช้ ปัจจุบันเลิกใช้งานแล้ว

- 307 Temporary Redirect

ข้อความร้องขอที่ส่งเข้ามาในครั้งนี้ ควรจะส่งซ้ำไปยังตัวระบุแหล่งทรัพยากรสากลที่กำหนดให้ แต่ครั้งหน้าก็อาจสามารถส่งมายังที่เดิมได้ ต่างกับรหัส 303 ตรงที่ข้อความร้องขอจะไม่มีการเปลี่ยนแปลง นั่นคือข้อความร้องขอแบบ POST ควรจะเหมือนเดิม เพียงแค่ส่งไปยังแหล่งอื่นแทนเท่านั้น

- 380 บริการเสริม / 380 Alternative service


4xx การตอบกลับล้มเหลว / ความผิดพลาดจากเครื่องลูกข่าย
รหัสสถานภาพกลุ่มนี้หมายถึง "การร้องขอจากเครื่องลูกข่ายไม่เป็นที่ยอมรับ หรือไม่สามารถทำตามการร้องขอนั้นได้" เครื่องแม่ข่ายจะถือว่าเป็นความผิดพลาดของเครื่องลูกข่าย เครื่องให้บริการควรจะอธิบายสาเหตุของความผิดพลาดไปกับเนื้อหาด้วย เว้นแต่เมื่อข้อความร้องขอนั้นใช้คำสั่ง HEAD และควรระบุว่าเป็นปัญหาที่เกิดขึ้นชั่วคราวหรือถาวร รหัสสถานภาพเหล่านี้สามารถใช้ตอบรับกับคำสั่งร้องขอใดก็ได้ ซึ่งตัวแทนผู้ใช้ควรแจ้งข้อผิดพลาดเหล่านั้นให้ผู้ใช้งานทราบด้วย

- 400 คำสั่ง Request ไม่ถูกต้อง / 400 Bad Request
ข้อความร้องขอที่ส่งมามีความผิดพลาดทางไวยากรณ์ หรือไม่สามารถทำตามการร้องขอนั้นได้

- 401 ไม่ได้รับสิทธิ ใช้กับ registrar เท่านั้น ส่วน Proxy ใช้ 407 / 401 Unauthorized

บอกไปยังเครื่องลูกข่ายว่าจำเป็นต้องทำการพิสูจน์ตัวตนก่อน คล้ายกับรหัส 403 Forbidden แต่ใช้เฉพาะเมื่อการพิสูจน์นั้นสามารถกระทำได้แต่กระบวนการล้มเหลว หรือยังไม่ได้เตรียมไว้ให้ ดูเพิ่มที่ การพิสูจน์ตัวจริงเพื่อเข้าถึงแบบพื้นฐาน (basic access authentication) และ การพิสูจน์ตัวจริงเพื่อเข้าถึงแบบย่อยข้อมูล (digest access authentication)

- 402 ต้องจ่ายเงิน (สงวนไว้ใช้ในอนาคต) / 402 Payment Required

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

- 403 ซ่อน / 403 Forbidden

ข้อความร้องขอที่ส่งเข้ามาถูกต้อง แต่เครื่องแม่ข่ายปฏิเสธที่จะให้บริการ ในกรณีนี้การพิสูจน์ตัวตนไม่ได้ให้ผลที่แตกต่างจากเดิม

- 404 ไม่พบ ไม่มีผู้ใช้ชื่อนี้ / 404 Not Found

ทรัพยากรที่ร้องขอไม่พบบนเครื่องแม่ข่าย แต่อาจสามารถกลับมามีได้ใหม่ในอนาคต การร้องขออื่น ๆ ที่ตามมายังสามารถดำเนินการได้ต่อไป

- 405 ไม่อนุญาตให้ใช้วิธีนี้ / 405 Method Not Allowed

เครื่องลูกข่ายใช้คำสั่งที่ทรัพยากรนั้นไม่รองรับ ตัวอย่างเช่น การส่งข้อมูลจากแบบฟอร์มด้วยคำสั่ง GET แต่ทรัพยากรปลายทางจำเป็นต้องเสนอด้วยคำสั่ง PUT หรือการใช้ PUT บนทรัพยากรที่อ่านได้อย่างเดียว เป็นต้น

- 406 ไม่สามารถรับได้ /406 Not Acceptable

ทรัพยากรที่ร้องขอซึ่งสามารถสร้างขึ้นได้ แต่เครื่องแม่ข่ายไม่ยอมรับให้ทำเช่นนั้น เนื่องจากส่วนหัว Accept ที่ส่งมากับข้อความร้องขอไม่สัมพันธ์กัน

- 407 ไม่ได้รับสิทธิจาก Proxy /407 Proxy Authentication Required

จำเป็นต้องมีการพิสูจน์ตัวจริงบนพร็อกซีก่อน

- 408 หมดเวลา ไม่สามารถค้นหาผู้ใช้ได้ในเวลาที่กำหนด / 408 Request Timeout

เครื่องให้บริการรอรับข้อความร้องขอจนหมดเวลา
- 409 ข้อขัดแย้งในข้อความร้องขอ / 409 Conflict 
ใช้แสดงว่าการร้องขอนั้นไม่สามารถประมวลผลได้ เนื่องจากเกิดข้อขัดแย้งในข้อความร้องขอ เช่นการแก้ไขชนกัน

- 410 ไม่สามารถติดต่อผู้ใช้ได้ ณ เวลานี้ / 410 Gone

ทรัพยากรที่ร้องขอไม่มีอยู่ และจะไม่กลับมามีอีกต่อไป รหัสนี้ควรใช้เมื่อตั้งใจที่จะเอาทรัพยากรแหล่งหนึ่งออกไปอย่างถาวร อย่างไรก็ตามรหัสนี้ก็ไม่จำเป็นและสามารถใช้ 404 Not Found แทนได้ แต่ถ้าหากได้รับรหัส 410 เมื่อใด เครื่องลูกข่ายไม่ควรส่งการร้องขอทรัพยากรนั้นมาอีกในอนาคต เสิร์ชเอนจินควรลบทรัพยากรนี้ออกจากดัชนีเว็บไซต์

- 411 Length Required
ข้อความร้องขอไม่ได้ระบุขนาดของเนื้อหามาในส่วนหัว ซึ่งเป็นสิ่งที่จำเป็นโดยทรัพยากรปลายทาง

- 412 Precondition Failed

เครื่องแม่ข่ายไม่สามารถทำตามเงื่อนไขอย่างใดอย่างหนึ่งที่ให้ไว้โดยผู้ทำการร้องขอ

- 413 คำสั่ง Request ยาวเกินไป / 413 Request Entity Too Large

ทรัพยากรที่ร้องขอใหญ่เกินกว่าที่จะส่งด้วยโพรโทคอลปัจจุบันได้

- 414 Request-URI ยาวเกินไป / 414 Request-URI Too Long

ข้อความร้องขอไม่ได้ระบุแบบชนิดสื่ออินเทอร์เน็ตที่เครื่องแม่ข่ายหรือทรัพยากรนั้นรองรับ ตัวอย่างเช่นเครื่องลูกข่ายระบุว่าทรัพยากรรูปภาพควรจะส่งให้มาเป็น image/svg+xml แต่เครื่องแม่ข่ายไม่สามารถหาชนิดของรูปภาพที่ต้องการ

- 415 ประเภทสื่อไม่สนับสนุน / 415 Unsupported Media Type
ข้อความร้องขอไม่ได้ระบุแบบชนิดสื่ออินเทอร์เน็ตที่เครื่องแม่ข่ายหรือทรัพยากรนั้นรองรับ ตัวอย่างเช่นเครื่องลูกข่ายระบุว่าทรัพยากรรูปภาพควรจะส่งให้มาเป็น image/svg+xml แต่เครื่องแม่ข่ายไม่สามารถหาชนิดของรูปภาพที่ต้องการ

- 416 ไม่สนับสนุน URI แบบนี้ / 416 Requested Range Not Satisfiable

เครื่องลูกข่ายร้องขอเนื้อหาบางส่วนของไฟล์ แต่เครื่องแม่ข่ายไม่สามารถจัดหาช่วงข้อมูลนั้นได้ เช่นในกรณีที่ตัวแทนผู้ใช้ร้องขอด้วยช่วงข้อมูลที่เกินกว่าขนาดของไฟล์


- 417 Expectation Failed
ส่วนหัว Expect ที่ส่งมาจากเครื่องลูกข่าย ยังไม่เพียงพอต่อความต้องการของเครื่องให้บริการ

- 420 Server ไม่เข้าใจโปรโตคอล SIP ที่ส่งมา / 420 Bad extension
- 421 ต้องการข้อมูลเพิ่มเติม / 421 Extension required

- 422 Unprocessable Entity

ข้อความร้องขอถูกจัดรูปแบบไว้อย่างดีแล้ว แต่ไม่สามารถทำตามนั้นได้เนื่องจากการตีความผิดพลาด

- 423 ช่วงเวลาน้อยเกินไป / 423 Locked

ทรัพยากรที่กำลังจะเข้าถึงนั้นถูกล็อกอยู่ 

- 479 ไม่สามารถใช้ URI นี้ได้

- 480 ปิดบริการชั่วคราว / 480 Temporarily unavailable
- 481 ติดต่อไม่ได้ / 481 Call/Transaction does not exist
- 482 เกิดการวน loop / 482 Loop detected
- 483 เชื่อมต่อมากเกินไป / 483 Too many hops
- 484 Address ไม่ถูกต้อง / 484 Address incomplete
- 485 สับสน / 485 Ambiguous
- 486 สายไม่ว่าง / 486 Busy here
- 487 ยุติการร้องขอ / 487 Request terminated
- 488 ไม่ได้รับ / 488 Not acceptable here
- 489 เหตุการณ์ไม่ถูกต้อง / 489 Bad event
- 491 ยุติการร้องขอ / 491 Request pending
- 493 ไม่ถูกกฎ ไม่สามารถถอดรหัส S/MIME ได้ / 493 Undecipherable
- 494 ต้องการความปลอดภัย / 494 Security agreement required


5xx server มีปัญหา / ความผิดพลาดจากเครื่องแม่ข่าย
รหัสสถานภาพกลุ่มนี้หมายถึง "เครื่องแม่ข่ายไม่สามารถให้บริการได้ แม้ว่าการร้องขอจะส่งมาอย่างถูกต้อง" เครื่องให้บริการพบกับข้อผิดพลาดบางประการซึ่งทำให้ไม่สามารถทำตามการร้องขอที่ส่งมา เครื่องแม่ข่ายควรอธิบายสาเหตุของความผิดพลาดลงในส่วนเนื้อหาในข้อความตอบรับ และควรระบุว่าเป็นปัญหาที่เกิดขึ้นชั่วคราวหรือถาวร ยกเว้นเมื่อตอบกลับจากคำสั่ง HEAD นอกจากนั้นตัวผู้ใช้ควรแจ้งข้อผิดพลาดให้ผู้ใช้ทราบ รหัสกลุ่มนี้สามารถใช้ตอบรับกับคำสั่งใดก็ได้

- 500 server มีปัญหาภายใน / 500 Internal Server Error
ข้อความแสดงความผิดพลาดแบบทั่วไป ใช้เมื่อไม่มีข้อความเฉพาะที่เหมาะสมในการแจ้งสาเหตุ

- 501 ยังไม่เปิดใช้วิธีนี้ / 501 Not Implemented

เครื่องให้บริการไม่เข้าใจคำสั่งร้องขอ หรือไม่ได้มีความสามารถให้ทำงานตามคำสั่งนั้น

- 502 Gateway ไม่ถูกต้อง / 502 Bad Gateway

เครื่องแม่ข่ายกำลังทำหน้าที่เป็นเกตเวย์หรือพร็อกซี และได้รับข้อความตอบรับที่ผิดพลาดจากเครื่องให้บริการเบื้องหลัง

- 503 ไม่สามารถให้บริการได้ / 503 Service Unavailable

เครื่องแม่ข่ายยังไม่ให้บริการในปัจจุบัน อันเนื่องจากการใช้งานเกินพิกัดหรืออยู่ในระหว่างการบำรุงรักษา โดยปกติแล้วสถานภาพนี้จะเป็นอยู่เพียงชั่วคราว

- 504 หมดเวลาติดต่อ Server / 504 Gateway Timeout

เครื่องแม่ข่ายกำลังทำหน้าที่เป็นเกตเวย์หรือพร็อกซี และไม่ได้รับข้อความตอบรับจากเครื่องให้บริการเบื้องหลัง ซึ่งรอรับข้อมูลจนกระทั่งหมดเวลา

- 505 Server ไม่สนับสนุนโปรโคตอล SIP รุ่นนี้ / 505 HTTP Version Not Supported

เครื่องแม่ข่ายไม่รองรับรุ่นของเอชทีทีพีที่ใช้ในข้อความร้องขอ

- 513 ข้อความยาวเกินไป / 513 Message Too Large


6xx ความผิดพลาดทั่วไป / Global Failure Responses

- 600 ยุ่งตลอดเวลา / 600 Busy Everywhere
- 603 ไม่รับ / 603 Decline
- 604 ไม่อยู่ตลอดเวลา / 604 Does Not Exist Anywhere
- 606 ไม่ยอมรับ / 606 Not Acceptable

อื่น ๆ เช่น
- INFO ส่งข้อมูลโดยไม่แก้ไข Session State
- REFER ใช้กับ call transfer
- MESSAGE ข้อความที่ต้องการส่ง
- UPDATE ส่งข้อมูลเพื่อแก้ไข Session State แต่ไม่เปลี่ยนสถานะการทำงาน

ตัวอย่าง SIP Request

REGISTER sip:seberino@switch-2.nufone.net SIP/2.0
Via: SIP/2.0/UDP 66.159.194.51:5060
CSeq: 3363 REGISTER
To: sip:seberio@switch-2.nufone.net
Expires: 900
Call-ID: 401507385@66.159.194.51
User-Agent: Shtoom/0.3alpha0
Contact: <sip:seberino@66.159.194.51:5060>
Contact-Length: 0

Credit : http://www.narisa.com/forums/index.php?showtopic=17004&st=0

Credit : http://th.wikipedia.org/wiki/Session_Initiation_Protocol
http://en.wikipedia.org/wiki/IP_Multimedia_Subsystem
http://en.wikipedia.org/wiki/Real-time_Transport_Protocol
http://en.wikipedia.org/wiki/Signalling_System_7
http://en.wikipedia.org/wiki/SIP_Requests
http://www.softpanorama.org/Net/Transport_layer/index.shtml
http://mail.python.org/pipermail/shtoom/2005-January/000087.html
http://search.cpan.org/~sullr/Net-SIP-0.23/


----------------------------


ความรู้ที่ได้เพิ่มเติมค่ะ(บางส่วนจาก paper ที่เขียน)
SIP Architectural Component
ในการที่จะสร้าง session การสื่อสารระหว่าง SIP server กับ SIP client ให้สำเร็จได้นั้นจะต้องมีองค์ประกอบในการเชื่อมต่อให้ครบอย่างน้อย 4 อย่างคือ 
1.SIP User Agents(UAs) : เป็นอุปกรณ์ที่ทำงานอยู่ฝั่ง end-users  เช่น cell phone , multimedia handsets , PCs , PDAs เป็นต้น  โดยจะใช้ทำหน้าที่ในการสร้างและจัดการ SIP sessions
2.SIP Registar Servers : เป็นฐานข้อมูลที่เก็บตำแหน่ง(location) ของ UAs ทั้งหมดที่อยู่ภายใน domain เดียวกัน  โดยทำหน้าที่เป็นผู้ให้บริการในการค้นหาและจัดส่ง IP Address ที่ได้ขึ้นทะเบียนไว้ไปให้แก่ Proxy Server เมื่อมีการร้องขอมา
3.SIP Proxy Servers : ทำหน้าที่เป็นตัวกลางระหว่างการติดต่อสื่อสารระหว่าง client กับ server โดยเมื่อได้รับ request session มาจาก UA ก็จะทำการ query ไปยัง Registar Servers เพื่อทำการขอข้อมูลเกี่ยวกับ UA ปลายทางและทำการส่ง session invitation ไปยัง UA ปลายทางด้วยในกรณีที่อยู่ภายใน domain เดียวกัน  ส่วนถ้าอยู่ต่าง domain นั้นก็จะทำการส่งต่อไปยัง Proxy Server ของ domain ปลายทางนั้นๆ ต่อไป
4.SIP Redirect Servers  : ทำหน้าที่ในการเชื่อมต่อระหว่าง SIP Proxy Server กับ session invitation ที่อยู่นอกคนละ domain โดยทั่วไปจะอยู่บน hardware เดียวกันกับ SIP Registar Servers และ SIP Proxy Servers

SIP address
SIP address มีลักษณะคล้ายกับ Domain Name Service(DNS) ใน web ทั่วๆ ไป เพื่อใช้ในการระบุตัวตนผู้ใช้ ซึ่งคล้ายกับการทำงานของระบบ e-mail ทำให้ผู้ใช้ไม่จำเป็นต้องยึดติดอยู่กับตัวอุปกรณ์

ตัวอย่าง SIP URL
sip:user@reskit.com  => Basic SIP URL.

sip:user@reskit.com;transport=TCP => Basic SIP URL with the transport protocol designation of TCP. If the transport protocol is not designated it defaults to UDP.

sip:user@172.16.20.54 => SIP URL with an IP address.

sip:+1-425-707-9796@reskit.com;user=phone => SIP URL with a global phone number.

sip:marketing@reskit.com;maddr=225.0.2.1;ttl=64 => SIP URL with a multicast address, which overrides the previously specified host name. The time-to-live (TTL) value is set to 64 (0-255). The TTL must be set when using a multicast address and UDP as the transport protocol.


Reference:
http://www.avaya.com
http://www.cs.columbia.edu/sip
http://www.dataconne...voip/dc-sip.htm
http://dmoz.org/Comp...t/Protocols/SIP
http://elwsc673.rsjp...panese/products
http://www.en.wikipedia.org
http://get.live.com/...senger/overview
http://www.itef.org
http://www.isoc.org/seinit/portal~
http://www.narisa.co...showtopic=17004
http://news.softpedi...port-with-Avaya
http://www.platcomm....ktopEdition.pdf
http://www.p2psip.org
http://sipcenter.com
http://www.tech-invite.com


=========================================
หลักการทำงาน
ในหัวข้อนี้จะกล่าวถึงการทำงานเบื้องต้นของ Protocol ที่ใช้ในการติดต่อสื่อสารตัวนี้ซึ่งจะแสดงตัวอย่างการติดต่อสื่อสารอย่างง่ายๆ ให้ได้ดูกันเป็นตัวอย่าง ในหัวข้อนี้จะบอกถึงลักษณะการติดต่อสื่อสารกันระหว่างการเชื่อมต่อที่ต่างกัน และจะไม่จำกัดในทุกกฏเกณฑ์

ตัวอย่างแรกจะแสดงพื้นฐานการทำงานแสดงสัญญาณของการเชื่อมต่อการเจรจาสนทนาระหว่างกันของข้อมูลที่เป็นไปตามกฏเกณฑ์ของการเชื่อมต่อ และการสิ้นสุดการเชื่อมต่อ

รูปที่ 1 จะแสดงตัวอย่างของการแลกเปลี่ยนข้อมูล SIP Message ระหว่างผู้ใช้งานทั้งสองฝั่ง ในตัวอย่างนี้ A จะใช้ SIP Application บน PC เพื่อเชื่อมต่อกับ B โดยติดต่อไปยัง SIP Phone ซึ่งต่อผ่านระบบ Internet ดังนั้นดังรูปจะแสดงสอง SIP proxy servers ซึ่งจะแสดงเป็นตัวแทนของ A กับ B เพื่อ สะดวก ในการร่วมสนทนา นี่เป็นตัวอย่างการจัดการที่จะใช้อ้างอิงการทำงานให้เห็นได้บ่อยๆ ดังแสดงในรูปที่ 1

A จะติดต่อกับ B โดยเรียกผ่านทาง SIP ID ของ B ในรูปแบบของ URI โดยการเรียกเข้าไปที่ SIP URI โดย URI คือกลุ่มแล้ว มีความเหมือนกันกับ email address เป็นแบบฉบับที่ประกอบด้วย username และ host ในส่วนของตัวอย่างนี้ ก็คือ sip:B@biloxi.com . biloxi.com คือ domain ของ B โดยถูกจัดการรูปแบบโดย SIP และ SIP URI ของ A คือ sip:A@atlanta.com บางที A อาจจะมีข้อมูลของ B โดย click ผ่าน hyper link หรือเลือกจากสมุดโทรศัพท์ SIP จะถูกจัดการอย่างปลอดภัยโดย URI. โดยจะถูกเรียกผ่าน URI ในตัวอย่างนี้มี sip:B@biloxi.com โดยมี URI รับประกันในเรื่องความปลอดภัย จะเข้ารหัสก่อนส่งข้อมูล โดยจะนำ SIP Message ส่งไปถึงผู้เรียก จากสิ่งนี้ การร้องขอจะมีความปลอดภัยจนถึงผู้เรียก แต่กลไกนี้จะขึ้นอยู่กับวิธีการของ domain ผู้เรียก

SIP จะถูกส่งรวมกับ HTTP ดังเช่นการร้องขอและการรับ ซึ่งเป็นไปตามรูปแบบของ HTTP ในแต่ละการดำเนินการร้องขอจะก่อให้เกิดเหตุการณ์ต่างๆ หรือกระบวนการต่างๆ บน server และการตอบกลับอย่างน้อยสุด หนึ่งการตอบกลับ ในการร้องขอการ INVITE ตำแหน่งถึง SIP URI ของ B, INVITE คือตัวอย่างเหตุการณ์ของ SIP มันถูกระบุเป็นคำสั่งของการร้องขอเมื่อ A ต้องการร้องขอไปยัง server เพื่อติดต่อกับ B การร้องขอโดย INVITE จะประกอบไปด้วยหมายเลขของ header โดย header ถือว่าเป็นชื่อและเป็นข้อมูลที่ถูกเพิ่มเติมเข้ามาในส่วนของข้อมูล การเกิด INVITE ขึ้นหนึ่งครั้งจะเป็นการรวมทุกอย่างเป็นหนึ่งเดียวเพื่อใช้ในการเรียกไปยังปลายทาง, ที่อยู่ของ A, และข้อมูลต่างๆ ที่เกี่ยวกับรูปแบบการเชื่อมโยงเพื่อให้เชื่อมต่อกับ B ได้สำเหร็จ ซึ่ง INVITE จะมีลักษณะการทำงานคล้ายดังรูปที่ 1 นี



รูปที่ 1 ตัวอย่างการเริ่ม SIP Session กับ SIP trapezoid

INVITE sip:B@biloxi.com SIP/2.0 =จะอยู่ใน header fields นี่คือตัวอย่างการร้องขอขั้นต่ำ ในส่วนของ header fields คือ ส่วนที่อยู่ภายใต้การบรรยายของ package

Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhds =ส่วนที่บอกว่าจะส่งข้อความนี้ไปยังที่ไหนดังตัวอย่าง pc33.atlanta.com

Max-Forwards: 70 =เป็นการระบุตัวเลขสูงสุดที่จะให้ผ่านถ้าเกินจากนี้ package จะ lose

To: B <sip:B@biloxi.com> =เป็นการระบุว่าจะติดต่อใคร

From: A <sip:A@atlanta.com>;tag=1928301774 =เป็นการระบุว่าจากใคร

Call-ID: a84b4c76e66710@pc33.atlanta.com =เป็นการบอกหมายเลขที่ใช้ในการสร้างคอนเน็คชันนี้

CSeq: 314159 INVITE =เป็นการบอกลำดับของเหตุการณ์นี้

Contact: <sip:A@pc33.atlanta.com> =เป็นการระบุ SIP หรือ SIP URI ที่แสดงให้เห็นเส้นทางโดยตรงถึงผู้ที่ติดต่อในตัวอย่างนี้ A คือผู้ติดต่อ

Content-Type: application/sdp =เป็นการรวบรวมในส่วนของข้อมูล (ไม่แสดง) / บ่งบอกถึงประเภทสื่อของตัวข้อความที่ส่งไปยังผู้รับ

Content-Length: 142 =จะเพิ่มขึ้นเมื่อมีเหตุการณ์เกิดขึ้นในแต่ละครั้ง


ทั้งหมดนี้อยู่ในส่วนของ SIP header fields ซึ่งได้ถูกกำหนดเอาไว้แล้ว

รายละเอียดของการเชื่อมต่อดังเช่นรูปแบบของข้อมูล, เสียง, ตัวอย่างการส่ง จะไม่ปรากฏภายใต้ SIP ถ้าจะให้ถูกต้อง ในส่วนของข้อมูล SIP จะต้องรวบรวมข้อมูลของการเชื่อมโยง, การถอดเอาข้อมูลของกฏการเชื่อมโยงในรูปแบบอื่นดังเช่นตัวอย่างรูปแบบของ Session Description Protocol (SDP) (RFC 2327) นี่คือข้อมูลของ SDP ไม่แสดงในตัวอย่าง โดยที่มันจะถูกส่งไปโดย SIP Message ในทางที่คล้ายกันกับการแทรกเอกสารไปใน email หรือการเริ่มต้นของ HTTP Message

การที่จะรู้ว่าการเชื่อมต่อสำเหร็จหรือว่าไม่มีข้อผิดพลาดเกิดขึ้นมานั้นจะได้รับการตอบกลับมาว่า 200 OK ดังตัวอย่างโดย B จะเป็นคนส่งข้อความนี้กลับมาให้ยัง A

SIP/2.0 200 OK

Via: SIP/2.0/UDP server10.biloxi.com;branch=z9hG4bKnashds8;received=192.0.2.3

Via: SIP/2.0/UDP bigbox3.site3.atlanta.com;branch=z9hG4bK77ef4c2312983.1;received=192.0.2.2

Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhds ;received=192.0.2.1

To: B <sip:B@biloxi.com>;tag=a6c85cf

From: A <sipA@atlanta.com>;tag=1928301774

Call-ID: a84b4c76e66710@pc33.atlanta.com

CSeq: 314159 INVITE

Contact: <sip:B@192.0.2.4>

Content-Type: application/sdp

Content-Length: 131




โครงสร้าง IP Protocol



รูปที่ 2 โครงสร้างของ IP Protocol

IP Header

- Version ขนาด 4 บิต : แสดงรุ่นของโปรโตคอล รุ่นที่ใช้งานขณะปัจจุบันมีค่า 4

- Internet Header Length (IHL) ขนาด 4 บิต : บอกความยาวเฉพาะเฮดเดอร์ของ datagram โดยนับจาก version จนถึงไบต์สุดท้ายก่อนที่จะถึงข้อมูล หน่วยนับความยาวจะบอกเป็นจำนวนเท่าของ 4 ไบต์ (หรือ 32 บิตเวิร์ด) หาก IHL มีค่าเท่ากับ 5 จะหมายถึงส่วนหัวมีขนาด 20 ไบต์ซึ่งเป็นค่าที่บอกว่าไม่มี options และ padding อยู่ในเดทาแกรม

- Type of Service (TOS) ขนาด 8 บ : ฟิลด์นี้ใช้กำหนดรูปแบบการให้บริการตามลักษณะโปรโตคอลแอพลิเคชัน

- Total length มีขนาด 16 บิต : บอกถึงความยาวทั้งหมด datagram (เฮดเดอร์และข้อมูล) โดยมีหน่วยนับเป็นไบต์ เนื่องจากฟิลด์นี้มีขนาด 169 บิต ไอพีดาตาแกรมจึงมีขนาดใหญ่สุดเท่ากับ 216 -1 หรือ 65,535 ไบต์

- Identification ขนาด 16 บิต

- Flags ขนาด 3 บิต

- Fragment offset ขนาด 13 บิต

- Time to live (TTL) ขนาด 8 บิต : ฟิลด์นี้ใช้กำหนดจำนวนเร้าเตอร์ที่ datagramจะเดินทางผ่านได้หรืออีนัยหนึ่งคือกำหนดอายุของ datagram ซึ่งมีค่าได้สูงสุดตามขนาดฟิลด์ คือ 28-1 หรือ 255 สถานีที่ส่ง datagram จะตั้งค่า TTL ไว้ที่ค่าใดค่าหนึ่ง เร้าเตอร์ที่รับ datagram จะปรับลดค่านี้ลงหนึ่งหน่วย หากลดลงเป็น 0 เร้าเตอร์จะทิ้ง datagramนั้นและรายงานกลับไปด้วย ICMP วิธีนี้ช่วยป้องกันปัญหา datagramวนรอบ (routing loop) สถานีต้นทางต้องเลือกใช้ค่านี้ให้เหมาะสม เนื่องจากมีค่าน้อยเกินไปจะทำให้ datagram เดินทางไปไม่ถึงปลายทาง หรือตั้งค่ามากเกินไปก็จะสร้างภาระให้ระบบเมื่อมีความผิดผกติด้านการเลือกเส้นทาง ค่าโดยปกติที่ใช้ คือ 64

- Protocol ขนาด 8 บิต : ฟิลด์บอกชนิดของโปรโตคอลระดับบนที่ encapsulation ใน datagram เพื่อให้สถานีปลายทางและสามารถส่งข้อมูลไปยังโปรโตคอลระดับบนได้ถูกต้องค่าที่ใช้ประจำโปรโตคอลมีดังนี้

ICMP

TCP

- Header checksum ขนาด 16 บิต : ใช้ตรวจสอบความผิดพลาดเฉพาะ header โดยไม่รวมส่วนข้อมูล การคำนวณผลรวมตรวจสอบจะเริ่มต้นด้วยการให้ฟิลด์ checksum มีค่าเป็น 0 จากนั้นจึงบวก Header ครั้งละ 16 บิตแบบ (1’s complement) เมื่อได้ผลลัพธ์แล้ว จะนำใส่ในฟิลด์ checksum IP ปลายทางเมื่อได้รับ datagram แล้วก็เพียงแต่บวก Header ทั้งหมดครั้งละ 16 บิตแบบ (1’s complement) หากค่าที่ได้ไม่เท่ากับ 0 แสดงว่ามีข้อผิดพลาดใน Header

- Source IP address ขนาด 32 บิต : กำหนด IP address ต้นทาง

- Destination IP address ขนาด 32 บิต : กำหนด IP address ปลายทาง

- Option ขนาดไม่คงที่ : ใช้สำหรับกำหนดข่าวสารเพิ่มเติมสำหรับ datagram ค่าที่ใช้ในปัจจุบันจะเกี่ยวข้องกับการรักษาความปลอดภัย และการบันทึกผลลัพธ์จาการทำงานของคำสั่ง traceroute หรือ ping

- Padding ขนาด 0 ถึง 3 ไบต์ : ใช้สำหรับผนวกเพิ่มเพื่อให้จำนวนไบต์ของ option รวมกับ padding เป็นจำนวนเท่าของ 32 บิต ค่าในฟิลด์ padding จึงไม่มีความสำคัญใด

- Data ขนาดไม่คงที่ : ข้อมูลจากโปรโตคอลระดับบน

SIP Messages

SIP messages คือการร้องขอข้อมูลจากทางฝั่งใดฝั่งหนึ่ง Server ร้องขอจาก Client หรือ Client ร้องขอจาก Server

ทั้งสองฝั่งสามารถร้องขอและตอบกลับได้โดยในการทำงานนั้นจะใช้รูปแบบในการจัดการดังนี้

generic-message = start-line

*message-header

CRLF

[ message-body ]

start-line = Request-Line / Status-Line

start-line, แต่ละ header , บรรทัดว่าง ต้องปิดด้วย carriage-return line-feed sequence (CRLF) สุดท้ายบรรทัดเปล่าจะต้องมีถ้าไม่มีส่วนของ Body

อย่างไรก็ตาม SIP ไม่ใช่ส่วนขยายเพิ่มเติมของ HTTP

- Requests

Request-Line = Method SP Request-URI SP SIP-Version CRLF

Methode คือ ส่วนที่เป็นการบ่งบอกถึงเหตุการณ์ว่า ณ ตอนนี้ต้องการร้องขออะไรซึ่งจะมีข้อมูลดังนี้ INVITE, ACK, และ CANCEL สำหรับยกเลิกการเชื่อมต่อ, BYE สำหรับหยุดการเชื่อมต่อ, และส่วนเพิ่มเติมสำหรับเรียกดูความสามารถในการจัดการและส่วนขยายเพิ่มเติมของ SIP ข้อมูลมาตรฐานบางทีอาจจะมีเพิ่มเหตุการณ์ได้

Request-URI คือ จะแสดงในส่วนของผู้ใช้งานหรือตำแหน่งผู้ที่ร้องขอ

SIP-Version คือ การระบุเวอร์ชันของ SIP

- Responses

Status-Line = SIP-Version SP Status-Code SP Reason-Phrase CRLF

SIP-Version คือ การระบุเวอร์ชันของ SIP

Status-Code คือ เลขจำนวนเต็มสามตัวที่ใช้แสดงผลลัพท์ของการติดต่อเพื่อให้เข้าใจร่วมกันว่าการติดต่อสำเหร็จหรือไม่สำเหร็จและมีปัญหาในส่วนไหนซึ่งจะมีดังต่อไปนี้

1xx: Provisional -- request received, continuing to process the request;

2xx: Success -- the action was successfully received, understood, and accepted;

3xx: Redirection -- further action needs to be taken in order to complete the request;

4xx: Client Error -- the request contains bad syntax or cannot be fulfilled at this server;

5xx: Server Error -- the server failed to fulfill an apparently valid request;

6xx: Global Failure -- the request cannot be fulfilled at any server.

Reason-Phrase คือ ข้อความสั้นๆ ที่แจ้งให้ทราบว่าปัญหาที่เกิดขึ้นเพราะอะไร หรือว่าไม่พบปัญหา


การดำเนินการ

Credit : http://www.msit.mut.ac.th/newweb/phpfile/show.php?Qid=2865
Credit : http://www.mind-tek.net/sip.php

IMS

IMS : IP Multimedia subsystem

IMS (IP Multimedia Subsystem) จุดศูนย์รวมมัลติมีเดียแห่งเครือข่าย
โดย บุญชัย ศรีพลแผ้ว
สวัสดีครับ สำหรับในวันนี้เราจะมาทำความรู้จักกับมาตรฐานหนึ่งที่จะช่วยทำให้ความผันด้าน Fixed Mobile Convergence เป็นจริงยิ่งขึ้น นั่นก็คือ IMS (IP Multimedia Subsystem) นั่นเอง
จากความนิยมในโปรโตคอล IP ที่ถือกำเนิดจากอินเทอร์เน็ตที่เติบโตขึ้นอย่างมาก ทำให้เทคโนโลยีการสื่อสารในปัจจุบันเน้นการสื่อสารด้วยโปรโตคอล IP กันมากขึ้น และทำให้เกิดความคิดที่จะรวบรวมบริการต่าง ๆ ทั้งของเครือข่ายไร้สายและเครือข่ายมีสายเข้ามาอยู่ด้วยกัน ทั้งนี้เพื่อให้ลูกค้าของเครือข่ายทั้งสองชนิดจะเข้ามาใช้ได้ นั่นก็คือ คอนเซ็ปต์ของ FMC (Fixed Mobile Convergence) นั่นเอง
นอกจากนี้จากเดิมที่การสื่อสารในแต่ละเครือข่ายจะเน้นเฉพาะการสื่อสารด้วยเสียงแต่เพียงอย่างเดียว เช่น เครือข่ายโทรศัพท์ต่าง ๆ ก็ได้มีความนิยมในการสื่อสารที่ไม่ใช่เสียง (Non-voice) กันมากขึ้น ซึ่งทำให้ผู้ให้บริการเครือข่ายต่าง ๆ ได้ปรับตัวเพื่อให้บริการแบบ Non-voice นี้กันอย่างมาก และนับเป็นทิศทางก้าวไปข้างหน้าของการสื่อสารยุคต่อไป
ด้วยสาเหตุทั้งสองประการข้างต้นนี่เอง จึงทำให้ 3GPP ได้ทำการพัฒนาระบบ IMS ขึ้นในปี 1999 เพื่อให้เป็นตัวกลางในการเชื่อมต่อเครือข่ายต่าง ๆ ไปยังบริการแบบมัลติมีเดีย เพื่อให้เครือข่ายต่าง ๆ สามารถที่จะใช้งานบริการมัลติมีเดียได้โดยที่ไม่ต้องดัดแปลงใด ๆ โดยมี IMS เป็นตัวกลางให้นั่นเอง
และจากการที่พัฒนาโดย 3GPP แรกเริ่มเดิมทีของ IMS นั้นมีจุดมุ่งหมายเพื่อที่จะให้บริการแก่ระบบเครือข่าย GSM/UMTS ในการใช้บริการมัลติมีเดียต่าง ๆ และกำหนดให้เฉพาะการใช้งานจากเครือข่ายแบบ GPRS เป็นพื้นฐาน แต่ต่อมาได้พัฒนาจนกระทั่งครอบคลุมเครือข่ายอื่น ๆ เช่น CDMA, WLAN และเครือข่ายอื่น ๆ ด้วย ซึ่งทำให้ความฝันของ FMC เป็นจริงขึ้นมาได้

ทำไมต้อง IMS?

IMS ได้ถือกำเนิดมาไม่ใช่เพื่อที่จะกำหนดมาตรฐานให้กับบริการต่าง ๆ ที่จะมาใช้งานกับเครือข่าย แต่หากจะให้ IMS นั้นเป็นตัวกลางในการใช้งานบริการต่าง ๆ จากเครือข่ายต่าง ๆ ดังนั้นจึงต้องมีการแยกบริการออกจากเครือข่าย หรือแยก Access Layer ออกจาก Service Layer นั่นเอง โดยที่จะใช้ IMS เป็นตัวกั้นกลางและประสานเลเยอร์ทั้งสองนี้เข้าด้วยกัน และด้วยความที่ IMS เป็นเพียงผู้ประสาน แต่ไม่ได้ไปกำหนดมาตรฐานนั่นเอง จึงทำให้ขึ้นอยู่กับความต้องการหลาย ๆ ด้าน และทำให้ในช่วงแรกนั้นไม่ได้รับความสนใจเท่าที่ควร เพราะว่าจะต้องใช้ประสบการณ์หลาย ๆ ด้าน อีกทั้งบริการที่มีในตอนนั้นก็ยังไม่มากพอ จึงทำให้หลักการรวมบริการเข้าด้วยกันไม่ได้รับความสนใจเท่าที่ควร

ข้อดีของการใช้งาน IMS

  • เป็นระบบรวมมัลติมีเดียเข้าด้วยกัน จึงทำให้เราสามารถที่จะควบคุมจัดการบริการต่าง ๆ ทั้งหมดได้จากจุดเดียว ทั้งการควบคุมบริการต่าง ๆ แก่ยูสเซอร์ การกำหนด Policy การกำหนด QoS เป็นต้น
  • เป็นระบบที่ทำให้คอนเซ็ปต์ของ FMC ที่ไม่ว่าจะอยู่ในเครือข่ายมีสายหรือเครือข่ายไร้สายก็ตาม เราก็ยังสามารถใช้บริการเดียวกันได้นั้นเป็นจริงขึ้นมา อีกทั้งเป็นระบบที่ทำให้บริการจากเครือข่าย IP สามารถที่จะใช้งานได้จากทุกเครือข่ายเป็นไปได้
  • สามารถที่จะทำ Roaming Agreement ได้กับเครือข่ายอื่น ๆ ทำให้การเคลื่อนย้ายไปใช้งานยังเครือข่ายต่าง ๆ หรือแม้กระทั่งกับผู้ให้บริการในต่างประเทศนั้นเป็นไปได้อย่างง่ายดาย
  • สามารถที่จะพัฒนาบริการใหม่ ๆ ได้รวดเร็ว เพราะไม่อิงกับเครือข่ายใดเครือข่ายหนึ่งอีกต่อไป และไม่จำกัดว่าจะต้องใช้บริการสำหรับเครือข่ายชนิดใดชนิดหนึ่งเพียงอย่างเดียว แต่สามารถที่่จะใช้เครือข่ายใดก็ได้ในการใช้งาน

รู้จักกับ IMS เพิ่มขึ้นอีกสักนิด

จากความต้องการในการพัฒนามาตรฐานนี้ให้เป็นไปอย่างรวดเร็ว จึงได้พัฒนามาตรฐานนี้จากมาตรฐานต่าง ๆ ของ IETF ซึ่งมีพื้นฐานจากมาตรฐาน IP จึงทำให้โปรโตคอลภายใน IMS แบ่งได้เป็น 2 กลุ่มหลัก ๆ คือ
1. Session Control Protocol
    สำหรับโปรโตคอลกลุ่มนี้นั้น IMS ได้เลือกใช้โปรโตคอล SIP (Session Initiation Protocol) ที่กำหนดโดย IETF และมีพื้นฐานมาจากโปรโตคอล IP ซึ่งมีความแพร่หลายและง่ายการใช้งาน ซึ่งจะใช้งานโปรโตคอล SIP กับงานสัญญาณควบคุมต่าง ๆ ในระบบ IMS นั้น

2. โปรโตคอลในกลุ่ม AAA
    โปรโตคอลที่อยู่ในกลุ่มนี้จะเน้นไปที่งาน Authorization, Authentication and Accounting ตามชื่อเรียก สำหรับโปรโตคอลกลุ่มนี้ IMS เลือกใช้งานโปรโตคอลที่ชื่อว่า Diameter ที่พัฒนามาจากโปรโตคอล Radius เพื่อใช้ในการตรวจสอบผู้ใช้งานว่าเป็นยูสเซอร์จริงหรือไม่อย่างไร มีสิทธิ์ในการใช้งานอย่างไรบ้าง ซึ่งจะเป็นการติดต่อกับ HSS และ SLF เป็นส่วนใหญ่

    นอกจากโปรโตคอล 2 กลุ่มนี้แล้ว ยังมีโปรโตคอลอื่นที่มีการใช้งานบ้าง เช่น H.248 ที่ใช้งานกับอุปกรณ์ Media Gateway โปรโตคอล RTCP และ RTP สำหรับสัญญาณเรียลไทม์ เป็นต้น

สถาปัตยกรรมของ IMS

สำหรับ IMS เราสามารถที่จะแบ่งได้เป็น 2 กลุ่มหลัก ๆ ก็คือส่วนที่เป็น Access Network ซึ่งได้แก่เครือข่ายที่ยูสเซอร์ใช้งานอยู่ เช่น เครือข่ายมีสายอย่างโทรศัพท์บ้านที่มีการใช้งานอินเทอร์เน็ตผ่าน ADSL เครือข่ายไร้สายต่าง ๆ เช่น เครือข่ายไวไฟและเครือข่ายโทรศัพท์เคลื่อนที่ในปัจจุบันอย่างระบบ GSM และระบบ CDMS เป็นต้น
ส่วนอีกกลุ่มในสถาปัตยกรรมของ IMS ก็คือส่วน Core ของ IMS ซึ่งเป็นส่วนหลักของ IMS และทำหน้าที่ร่วมกันเป็นเครือข่ายหลักในการให้บริการ IP Multimedia ต่าง ๆ แก่เครือข่ายที่ยูสเซอร์ใช้งาน ส่วนนี้เราสามารถที่จะแบ่งเป็นส่วนย่อย ๆ ได้ดังนี้

รูปที่ 1 สถาปัตยกรรมของ IMS

         1. CSCF (Call / Session Control Function)
         2. User Database
         3. MRF (Media Resource Function)
         4. BGCF (Breakout Gateway Control Function)
         5. ชุด Media Gateway
         6. ส่วน Application Server

เราจะมาความรู้จักแต่ละส่วนกันอย่างย่อ ๆ เพื่อให้เข้าใจ IMS มากขึ้น

1. CSCF (Call / Session Control Function)
    เป็นส่วนที่ทำหน้าที่ควบคุม Session การติดต่อสื่อสารต่าง ๆ ภายใน IMS โดยที่จะใช้โปรโตคอล SIP เป็นหลัก เราสามารถที่จะแบ่งหน้าที่การทำงานของ CSCF ออกได้เป็น 3 ส่วนหลัก ๆ แต่อาจจะอยู่ในอุปกรณ์ชุดเดียวกันหรือแยกชุดกันก็ได้แล้วแต่การออกแบบ ซึ่ง 3 ส่วนที่ว่านั้นได้แก่

  • P-CSCF (Proxy CSCF) ชื่อนี้บอกค่อนข้างชัดเจนว่าเป็น Proxy ซึ่งทำหน้าที่เป็นหน้าด่านในการติดต่อกับยูสเซอร์หรืออุปกรณ์ Subscriber จะทำหน้าที่ตรวจสอบทุก ๆ แมสเสจ (Message) ที่วิ่งผ่านมันไป และมีหน้าที่ในการตรวจสอบยูสเซอร์ที่ติดต่อเข้ามา ซึ่งอาจจะเป็นภายในเครือข่าย Home Network หรือเครือข่ายที่ยูสเซอร์ไป Roaming อยู่ก็ได้ โดยจะมีการกำหนด P-CSCF ให้ในครั้งแรกที่มีการ Register เข้ากับเครือข่ายผ่าน DHCP หรือผ่าน PDP Context ในกรณี GPRS และใช้งาน P-CSCF นั้นไปตลอดจนกระทั่งย้ายไปยังเครือข่ายอื่น
  • I-CSCF (Interrogating CSCF) จะทำหน้าที่ในการนำ SIP Message ไปยังปลายทาง โดยอาจจะเป็น Remote Server ที่ต้องการติดต่อกับยูสเซอร์ปลายทาง หรือเป็นอุปกรณ์ที่ใช้ IMS เช่นเดียวกันก็จะติดต่อผ่าน P-CSCF จากนั้น P-CSCF ก็จะนำแมสเสจนั้นส่งต่อมาที่ I-CSCF อีกทีหนึ่งเพื่อนำส่งไปยังปลายทาง ดังนั้น I-CSCF อาจอยู่ในเครือข่าย Roaming หรือในเครือข่าย Home Network ก็ได้
หลังจากที่ I-CSCF ไำด้รับแมสเสจแล้วจะนำมาตรวจสอบกับ SLF ว่าอุปกรณ์หรือยูสเซอร์รายนั้นขึ้นกับ HSS ใด แล้วจึงทำการตรวจสอบกับ HSS นั้นว่าขณะนั้นอุปกรณ์หรือยูสเซอร์นั้นอยู่ที่ใดเพื่อที่จะได้เชื่อมต่อ SIP Message นั้นไปยัง S-CSCF ที่ยูสเซอร์รายนั้นอยู่ โดยโปรโตคอลที่ใช้ในการตรวจสอบกับ SLF และ HSS นั้นจะใช้ Diameter ในการตรวจสอบ และเพื่อความปลอดภัย I-CSCF จะเข้ารหัสข้อมูลที่ใช้ในการสื่อสารกับ S-CSCF และ P-CSCF เพื่อไม่ให้มีใครดักจับข้อมูลไปได้
  • S-CSCF (Serving CSCF) จะอยู่ในเครือข่าย Home Network โดยที่จะมีหน้าที่เป็นตัวควบคุม SIP Control ของยูสเซอร์ในการใช้งานตัดสินใจเลือก Application Server ในการส่ง SIP Message นั้นต่อไป และควบคุม Policy ในการใช้งานของยูสเซอร์ ดังนั้นจึงต้องดาวน์โหลดข้อมูลยูสเซอร์มาจาก HSS โดยใช้โปรโตคอล Diameter เพื่อที่จะนำข้อมูลนั้นมาช่วยในการตัดสินใจการควบคุม SIP ของยูสเซอร์นั้น ๆ และเชื่อมโยง SIP Address นั้นเข้ากับ IP Address ของยูสเซอร์เพื่อให้มีการเชื่อมต่อได้อย่างถูกต้องและเหมาะสม
2. User Database
    ประกอบด้วย HSS (Home Subscriber Server) หรือ USPF (User Profile Server Function) และ SLF (Subscriber Location Function) โดย HSS จะทำหน้าที่เก็บโพรไฟล์ของยูสเซอร์ ทำหน้าที่ตรวจสอบยูสเซอร์ด้วยการทำ Authentication and Authorization และเก็บตำแหน่งที่อยู่ของยูสเซอร์ว่าขณะนั้นอยู่ที่ใด ใน S-CSCF ใด ซึ่งหลักการจะคล้ายคลึงกับ HLR/AUC (Home Location Register and Authentication Center) ในระบบ GSM

    ในส่วนของ SLF (Subscriber Location Function) จะทำหน้าที่เชื่อมโยงยูสเซอร์เข้ากับ HSS ที่มีข้อมูลของยูสเซอร์รายนั้นอยู่เพื่อค้นหาว่ายูสเซอร์นั้นขึ้นกับ HSS ใด  HSS และ SLF นั้นจะทำการติดต่อสื่อสารด้วยโปรโตคอล Diameter ทั้งคู่
3. MRF (Media Resource Function)
    เป็นอุปกรณ์ที่ใช้งานภายในเครือข่ายเท่านั้น โดยจะทำหน้าที่ให้บริการด้านมีเดียต่าง ๆ ภายใน เช่น Announcement ต่าง ๆ , การให้สัญญาณโทนเสียงต่าง ๆ , การเป็นตัวกลาง Telephone Conference รวมถึงการแปลงข้อมูลเสียงที่เข้ารหัสแบบหนึ่งให้เป็นรหัสเสียงอีกแบบหนึ่ง

    ส่วนประกอบของ MRF ได้แก่ MRFC (MRF Controller) ซึ่งจะเป็นตัวประมวลผลและติดต่อสื่อสารกับ S-CSCF ผ่าน MR Interface และ MRFP (MRF Processor) ที่จะทำหน้าที่แลกเปลี่ยนข้อมูลสัญญาณเสียง โดยได้รับการควบคุมผ่าน H.248 จาก MRFC

4. BGCF (Breakout Gateway Control Function)
    ส่วนนี้เป็นส่วนเชื่อมโยงโครงข่ายยุคเก่าเข้ามา โดยเชื่อมโยงกับเครือข่ายยุคเก่าที่เป็นโทรศัพท์พื้นฐานหรือโครงข่ายที่ไม่มี IMS โดย BGCF จะได้รับการควบคุมจาก S-CSCF มาอีกทีหนึ่ง โดยจะวิเคราะห์เลขหมายปลายทางว่าเป็นเครือข่ายใดที่จะติดต่อด้วย และทำการเรียก MGCF เพื่อให้มีการแปลงการเข้ารหัสระบบ IP เป็น PCM ที่ใช้ในเครือข่ายยุคเก่าที่เป็นโทรศัพท์พื้นฐานและเชื่อมต่อกัน


5. Media Gateway    ในส่วนนี้จะทำหน้าที่เป็นเกตเวย์ (Gateway) ในการติดต่อกับ PSTN Network ที่มีทั้งการเชื่อมต่อโดยใช้ Signaling แบบ CCS7 ที่มี ISUP และ MTP แทนการใช้งาน SIP บน IP ในเครือข่าย IMS และใช้ PCM แทนการใช้งาน RTP บนเครือข่าย IMS
    ในส่วนของ Media Gateway จะประกอบด้วยส่วนต่าง ๆ ก็คือ MGCF (Media Gateway Control Function) ที่ทำหน้าที่เป็นสมองหลักของส่วน Media Gateway จะคอยดูด้าน Signaling ในการติดต่อ ทำหน้าที่แปลงโปรโตคอล SIP ให้เป็น ISUP ภายในเครือข่าย PSTN
    ส่วนที่ 2 คือ SGW (Signaling Gateway) จะทำหน้าที่แปลงโปรโตคอลระดับล่าง ตัวอย่างเช่น SCTP (Stream Control Transmission Protocol) เป็น MTP ภายในเครือข่าย PSTN และดูแลทางด้าน Signaling เป็นหลัก
    ส่วนสุดท้ายก็คือ MGW (Media Gateway) ซึ่งเป็นส่วนที่ดูแลในด้านทราฟฟิก (Traffic) ที่จะแปลงจาก RTP เป็น PCM เพื่อให้สามารถที่จะทำการติดต่อสื่อสารได้อย่างถูกต้องไม่ผิดเพี้ยน

6. Application Server    เป็นส่วนสุดท้ายที่จะให้บริการต่าง ๆ และเป็นส่วนที่จะแยกจากส่วน Access โดยมี IMS เป็นตัวแยกเพื่อให้ไม่ขึ้นกับเครือข่ายที่ยูสเซอร์ใช้งานแต่อย่างใด

ในครั้งนี้เรามาแนะนำ IMS ให้รู้จักอย่างสั้น ๆ กันก่อนครับ คราวหน้าเราจะมาทำความรู้จักอย่างลึกซึ้งกว่านี้ว่า IMS ทำงานอย่างไรในรายละเอียด โดยจะยกเป็นกรณี ๆ ตั้งแต่มีการเปิดเครื่อง ลงทะเบียน และใช้งานในรูปแบบต่าง ๆ ...สำหรับครั้งนี้ ขอบคุณครับ


Credit : http://www.mvt.co.th/viewarticle.php?cid=3&nid=128&page=2

----------------------------

เป็นเทคโนโลยีที่ได้รับการพัฒนาขึ้นมาเพื่อเป็นเครื่องมือในการบริการจัดการต่าง ๆ ที่ใช้ IP (Internet Protocol) เป็นรูปแบบในการสื่อสารให้สามารถใช้งานบนเครือข่ายสื่อสารเดียวกันได้ (Convergence) เป็นเครือข่าย Multimedia รองรับการใช้บริการได้ทุกแบบ ไม่ว่าจะเป็นเสียง ข้อมูล และภาพในเวลาเดียวกันและบนอุปกรณ์ Terminal เดียวกัน สามารถใช้งานแบบ Triple Play (ภาพ เสียง ข้อมูล) ได้สมบูรณ์แบบ  ระบบยังถูกออกแบบให้สามารถใช้งานกับอุปกรณ์สื่อสารที่มีอยู่เดิมและโครงข่ายเดิมได้อย่างมีประสิทธิภาพ สามารถเพิ่มขนาดการใช้งานจากขนาดเล็กไปเป็นขนาดใหญ่ได้ (Scalable) มาตรฐาน IMS พัฒนาโดย 3GPP (3 rd Generation Partnership Project) และ IETF เป็นมาตรฐานที่สามารถทำให้โครงข่ายต่างๆ สามารถสื่อสารกันได้และสามารถใช้งานบริการแบบ Multimedia ร่วมกันได้ แม้ว่าจะมีโครงข่ายสื่อสารที่ต่างชนิดกัน ซึ่งมาตรฐาน IMS นั้นเป็นส่วนหนึ่งของ Next Generation Networks หรือ NGN

Credit : http://www.ircp.co.th/projects/A1-telecom/
Credit : http://www.slideshare.net/shubhabratamukherjee1/ims-architacture-nodes

----------------------------

IMS (IP Multimedia Subsystem) นั้นสามารถ map protocol ของ CS voice call ลงบน PS ได้ ทำให้การดีเลย์นั้น แทบจะไม่รู้สึก และไม่ต้องเปลือง Signaling ในการตัดต่อสัญญาณออกไปได้อีกด้วย โดยเจ้า IMS นี้ จะสามารถทำการ Anchoring call (เหมือนการ Handover ปกติ บน 2G/3G) ของเราบน LTE ลงไปบน CS Core Network ของ 2G/3G ได้เลย รวมถึงเวลาที่โทรศัพท์มือถือเคลื่อนออกจากพื้นที่ที่มีสัญญาณ LTE ก็จะทำการ Handover ลงไปยังระบบ 2G/3G ได้อย่างปกติอีกด้วย (ณ ปัจจุบัน ยังต้องพึ่งพา CSFB เพื่อลง 2G/3G ในการเริ่มต้น Voice Call อย่างเดียว Voice Call + Data ไม่สามารถอยู่บน LTE ได้)
*** จริงๆ IMS มีการเปิดตัวมาตั้งแต่สมัย Rel5 ที่เริ่มมี HSDPA แล้วแหละ เพียงแต่มันจะทำงานได้อย่างยอดเยี่ยม กับ Voice Call บน LTE โดยเฉพาะ Feature ที่มีเพิ่มมาใน Rel10 เหมือนเป็นเทวดามาโปรดยังงัยยังงั้น

Credit : 
http://mahalarp.com/2012/05/29/voice-over-lte-voims-srvcc/
-----------------------------------

The concept of IMS



S-CSCF

S-CSCF : Serving Call Session Control Function

หน้าที่หลัก
1: การตรวจสอบการลงทะเบียนผู้ใช้งาน
2: การควบคุมเส้นทางเซสชัน (Normal, interworking โทรฉุกเฉิน)
3: ทริกเกอร์บริการ

ขั้นตอนการลงทะเบียน
(5) ตรวจสอบผู้ใช้และดาวน์โหลดข้อมูลผู้ใช้ จาก HSS
(6)การควบคุมเซสชั่นการโทรเรียกบริการ ส่งกลับไป I-CSCF
(7),(8) ตอบการลงทะเบียนสำเร็จกลับไปยัง UE

----------------------------

S-CSCF (Serving CSCF) จะอยู่ในเครือข่าย Home Network โดยที่จะมีหน้าที่เป็นตัวควบคุม SIP Control ของยูสเซอร์ในการใช้งานตัดสินใจเลือก Application Server ในการส่ง SIP Message นั้นต่อไป และควบคุม Policy ในการใช้งานของยูสเซอร์ ดังนั้นจึงต้องดาวน์โหลดข้อมูลยูสเซอร์มาจาก HSS โดยใช้โปรโตคอล Diameter เพื่อที่จะนำข้อมูลนั้นมาช่วยในการตัดสินใจการควบคุม SIP ของยูสเซอร์นั้น ๆ และเชื่อมโยง SIP Address นั้นเข้ากับ IP Address ของยูสเซอร์เพื่อให้มีการเชื่อมต่อได้อย่างถูกต้องและเหมาะสม


I-CSCF

I-CSCF : Interrogating Call Session Control Function



หน้าที่หลัก
1: รายการแรกที่เครือข่าย IMS ของผู้ให้บริการ
2: การกำหนด S-CSCF และการกำหนดเส้นทางเซสชั่น

ขั้นตอนการลงทะเบียน
(3) เลือก S-CSCF(มีหลายตัว) ในการลงทะเบียน โดยถามไปยัง HSS
(4) เมื่อรู้ว่าใช้ S-CSCF ตัวไหนก็ส่งต่อ

----------------------------

I-CSCF (Interrogating CSCF) จะทำหน้าที่ในการนำ SIP Message ไปยังปลายทาง โดยอาจจะเป็น Remote Server ที่ต้องการติดต่อกับยูสเซอร์ปลายทาง หรือเป็นอุปกรณ์ที่ใช้ IMS เช่นเดียวกันก็จะติดต่อผ่าน P-CSCF จากนั้น P-CSCF ก็จะนำแมสเสจนั้นส่งต่อมาที่ I-CSCF อีกทีหนึ่งเพื่อนำส่งไปยังปลายทาง ดังนั้น I-CSCF อาจอยู่ในเครือข่าย Roaming หรือในเครือข่าย Home Network ก็ได้
หลังจากที่ I-CSCF ไำด้รับแมสเสจแล้วจะนำมาตรวจสอบกับ SLF ว่าอุปกรณ์หรือยูสเซอร์รายนั้นขึ้นกับ HSS ใด แล้วจึงทำการตรวจสอบกับ HSS นั้นว่าขณะนั้นอุปกรณ์หรือยูสเซอร์นั้นอยู่ที่ใดเพื่อที่จะได้เชื่อมต่อ SIP Message นั้นไปยัง S-CSCF ที่ยูสเซอร์รายนั้นอยู่ โดยโปรโตคอลที่ใช้ในการตรวจสอบกับ SLF และ HSS นั้นจะใช้ Diameter ในการตรวจสอบ และเพื่อความปลอดภัย I-CSCF จะเข้ารหัสข้อมูลที่ใช้ในการสื่อสารกับ S-CSCF และ P-CSCF เพื่อไม่ให้มีใครดักจับข้อมูลไปได้

P-CSCF

P-CSCF : Proxy Call Session Control Function

หน้าที่หลัก

1: จุดติดต่อแรกกับเครือข่าย IMS ในโดเมนหลักหรือโดเมนที่ย้ายมา
2: ควบคุมการเข้าถึงเครือข่าย
3: ควบคุมคุณภาพของสัญญาณ QoS ควบคุม NAT และการควบคุมการรักษาความปลอดภัย

ขั้นตอนการลงทะเบียน
จุดเชื่อมต่อระหว่างการลงทะเบียน  P-CSCF ในเครือข่าย Visited Network เมื่อ Subscriberอื่นที่เข้ามา Roaming ในระบบ

(1) เครือข่ายผู้โทร: ทำงานเป็นจุดเชื่อมต่อสำหรับการโทร เริ่มการลงทะเบียน (2)ส่งต่อไป I-CSCF

----------------------------

P-CSCF (Proxy CSCF) ชื่อนี้บอกค่อนข้างชัดเจนว่าเป็น Proxy ซึ่งทำหน้าที่เป็นหน้าด่านในการติดต่อกับยูสเซอร์หรืออุปกรณ์ Subscriber จะทำหน้าที่ตรวจสอบทุก ๆ แมสเสจ (Message) ที่วิ่งผ่านมันไป และมีหน้าที่ในการตรวจสอบยูสเซอร์ที่ติดต่อเข้ามา ซึ่งอาจจะเป็นภายในเครือข่าย Home Network หรือเครือข่ายที่ยูสเซอร์ไป Roaming อยู่ก็ได้ โดยจะมีการกำหนด P-CSCF ให้ในครั้งแรกที่มีการ Register เข้ากับเครือข่ายผ่าน DHCP หรือผ่าน PDP Context ในกรณี GPRS และใช้งาน P-CSCF นั้นไปตลอดจนกระทั่งย้ายไปยังเครือข่ายอื่น

Credit : http://www.mvt.co.th/viewarticle.php?cid=3&nid=128&page=2

ATGW

ATGW : Access Transfer Gateway



ATGW ควบคุม Media Handover เป็นฟังก์ชั่นที่ระหว่างอุปกรณ์ในSBC คั่น IMS (P-CSCF, I-CSCF, S-CSCF) กับ SRVCC Inter works ที่จะให้ ระหว่างการโทรมีการข้ามเครือข่ายระหว่างPS-CS  ATGW กำหนดว่าจะส่งต่อสายปลายทางข้ามเครือข่ายผู้ให้บริการ และความสามารถข้ามในสถานี ในระหว่างการส่งสาย SRVCC, ATCF หรือ ATGW ส่งค่าเริ่มต้นโดย SRVCC IWF กับค่าเพื่อทำการเชื่อมต่อ, ค่าการปรับปรุงท่อการข้อมูลและการค่าเริ่มต้นการร้องขอส่งมอบให้กับ SCC AS ไปยังปลายทาง

2.14.2558

ATCF

ATCF : Access Transfer Control Function


ATCF ควบคุม Signaling Handover เป็นฟังก์ชั่นที่ระหว่างอุปกรณ์ในSBC คั่น IMS (P-CSCF, I-CSCF, S-CSCF) กับ SRVCC Inter works ที่จะให้ ระหว่างการโทรมีการข้ามเครือข่ายระหว่างPS-CS  ATCF กำหนดว่าจะส่งต่อสายข้ามเครือข่ายผู้ให้บริการ และความสามารถข้ามในสถานี ในระหว่างการส่งสาย SRVCC, ATCF หรือ ATGW ส่งค่าเริ่มต้นโดย SRVCC IWF กับค่าเพื่อทำการเชื่อมต่อ, ค่าการปรับปรุงท่อการข้อมูลและการค่าเริ่มต้นการร้องขอส่งมอบให้กับ SCC AS ไปยังปลายทาง

AMBR

AMBR : Aggregate Maximum Bit Rate


ข้อรวบรวมจำกัดอัตราความเร็วสูงสุดของการส่งข้อมูล ทั้ง Up link/Down link จะส่งข้อมูลไม่เกินความเร็วที่กำหนดไว้เพื่อไม่ให้รบการส่งของช่องสัญญาณอื่นๆ โดยที่กำหนดท่อการส่ง Default Bearer ตามระดับ QoS class identifier (QCI) เพื่อประกันคุณภาพของสัญญาณด้วย เป็นการจองช่องสัญญาณโดย MME เป็นตัวกำหนดค่ามาให้



POTS

POTS : Plain Old Telephone Service


POTS ย่อมาจาก Plain Old Telephone Service. แปลเป็นไทยคือ บริการโทรศัพท์แบบเก่า ส่วนมากเป็นโทรศัพท์สายแบบพื้นฐาน โทรศัพท์บ้าน ซึ่งเป็นระบบโทรศัพท์ในชุมสายที่เราใช้ติดต่อพูดคุยกันทุกวันนี้ ท่อการส่งจะถูกจำกัดไว้แค่ 3,400 รอบต่อวินาที เหตุผลหลักคือในการเดินสายสัญญาณมักจะต้องรวมกันเป็นจำนวนหลายๆคู่สาย และสัญญาณที่เราใช้พูดคุยกันเป็นสัญญาณแบบอนาลอกซึ่งมีการรบกวนข้ามคู่สายได้ง่าย ท่านอาจพบ เหตุการณ์ที่ได้ยินเสียงคนอื่นสนทนากันแทรกสาย เวลาเราพูดคุยกับคู่สนทนาของเรา แต่ในปัจจุบันระบบชุมสายได้เปลี่ยนเป็นระบบดิจิตอลเกือบหมดแล้วการรบกวนระหว่างสายก็ถูกกำจัดด้วยเทคโนโลยีดิจิตอล การใช้ความเร็วจำกัดในคู่สายโทรศัพท์ก็กลายเป็นอดีตไปแล้ว

Credit : http://www.ine.co.th/services/adsl/dsl1_th.php

AGCF

AGCF : Access Gateway Control Function


เป็นอุปกรณ์ในกลุ่มของ IP Multimedia Subsystem (IMS) ที่จะส่งมอบในสัญญาของโทรศัพท์พวกFixed lineโทรศัพท์บ้าน ที่เป็น IP ทั้งหมด แล้วแปลงข้อมูลเพื่อส่งไปยังผู้ให้บริการโทรคมนาคมในเครือข่ายอื่นๆได้ในขณะที่มีการส่งข้อมูลผ่านอุปกรณ์ต้องมีการรักษาความปลอดภัยและความต่อเนื่องของบริการ ในฐานะที่เป็นส่วนหนึ่งของการแก้ปัญหาการข้ามเครือข่าย IMS, ฟังก์ชั่นการควบคุมการเข้าถึง Gateway เป็นส่วนประกอบที่สำคัญในการวิวัฒนาการของเครือข่ายโทรคมนาคมอีกด้วย

การควบคุมการเข้าถึงเกตเวย์ฟังก์ชั่น (AGCF) ช่วยให้เครือข่าย IMS ที่จะสื่อสารกับการเข้าถึงเครือข่ายเป็นรูปแบบ SIP โดยไม่ต้องผ่าน MGW อีก

AGCF เป็นผลมาจากประสบการณ์การทำงานมากกว่าทศวรรษช่วยพัฒนาให้ผู้ให้บริการเอื้อต่อการสร้างเครือข่ายรุ่นต่อไป4Gและใช้ IMS ช่วยให้คุณสามารถโอนย้ายเครือข่าย 2G/3G เพื่อใช้งาน VoIP ได้

Credit : http://www.metaswitch.com/products/communications-infrastructure/ims-agcf

FE

FE : Front end

*เรียกกันง่าย ๆ ว่า หน้าบ้าน ซึ่งความหมายก็ตรงตัวจริง ๆ ครับ Front ends คือส่วนติดต่อผู้ใช้ เช่น งานcall center, งานNOC ดูแลปัญหาเบื้องต้นก่อน ถ้าแก้ไขได้ก็จบ แต่เกิดยังแก้ไขปัญหาไม่ได้ก็มีอีกทีมที่สามารถส่งต่องานให้ทีม BE : Back end แก้ไขในเชิงลึกต่อไป

BE

BE : Backend

เรียกติดปากในหมู่นักพัฒนาระบบ(Developer) นักเขียนโปรแกรม (Programmer)ว่า หลังบ้าน
คือส่วนจัดการกับข้อมูล


*แต่ในทางโทรคมเราเป็นทีมที่รับงานแก้ปัญหายากๆหรือเกินขอบเขต
ที่ส่งมาทำต่อจากทีม FE : Front Ends ซึ่งก็เป็น หลังบ้าน ของส่วนงานนั้นๆ

Credit : http://thatsay.com/story/8625uEu9BQkfd7

กสทช.

กสทช. : คณะกรรมการกิจการกระจายเสียง กิจการโทรทัศน์ และกิจการโทรคมนาคมแห่งชาติ
คณะกรรมการกิจการกระจายเสียง กิจการโทรทัศน์ และกิจการโทรคมนาคมแห่งชาติ (อังกฤษ: National Broadcasting and Telecommunication Commission) หรือ กสทช. (NBTC) เป็นหน่วยงานอิสระของรัฐ มีบทบาทหน้าที่ในการบริหารความถี่วิทยุเพื่อกิจการโทรคมนาคม และกำกับดูแลการประกอบกิจการโทรคมนาคม
กสทช.จัดตั้งขึ้นตามพระราชบัญญัติองค์กรจัดสรรคลื่นความถี่ และกำกับกิจการวิทยุกระจายเสียง วิทยุโทรทัศน์ และกิจการโทรคมนาคม พ.ศ. 2553

องค์กรและหน่วยงานในกำกับ

  • สำนักงานคณะกรรมการกิจการโทรคมนาคมแห่งชาติ (อังกฤษ: Office of National Telecommunications Commission) หรือ สำนักงาน กทช. - พระราชบัญญัติองค์กรจัดสรรคลื่นความถี่และกำกับกิจการวิทยุกระจายเสียง วิทยุโทรทัศน์และกิจการโทรคมนาคม พ.ศ. 2543 มีผลให้มีการโอนกิจการ ทรัพย์สิน สิทธิ หน้าที่ หนี้ และงบประมาณของกรมไปรษณีย์โทรเลขไปเป็นของสำนักงานคณะกรรมการกิจการโทรคมนาคมแห่งชาติ รวมทั้งข้าราชการและลูกจ้างของกรมไปรษณีย์โทรเลข สำนักงาน กทช. มีเลขาธิการ กทช. เป็นผู้บริหารสูงสุดที่รับผิดชอบการปฏิบัติงานของสำนักงาน และรายงานขึ้นตรงต่อ ประธานคณะกรรมการกิจการโทรคมนาคมแห่งชาติ[8]
  • สถาบันวิจัยและพัฒนาอุตสาหกรรมโทรคมนาคม (อังกฤษ: Telecommunications Research and Industrial Development Institute) หรือ สพท. - จัดตั้งขึ้นโดย คณะกรรมการกิจการโทรคมนาคมแห่งชาติ ให้เป็นหน่วยงานหนึ่งของสำนักงานคณะกรรมการกิจการโทรคมนาคมแห่งชาติ เพื่อดำเนินการตามภารกิจของอำนาจหน้าที่ในพระราชบัญญัติองค์กรจัดสรรคลื่นความถี่และกำกับกิจการวิทยุกระจายเสียง วิทยุโทรทัศน์และกิจการโทรคมนาคม พ.ศ. 2543 มาตรา 51 (15) และ (16) กล่าวคือ การส่งเสริมการฝึกอบรมและพัฒนาบุคลากรด้านโทรคมนาคมและเทคโนโลยีสารสนเทศ และการส่งเสริมสนับสนุนการวิจัยและพัฒนาเทคโนโลยีด้านโทรคมนาคม เทคโนโลยีสารสนเทศ อุตสาหกรรมโทรคมนาคม และอุตสาหกรรมต่อเนื่อง[9]
  • สถาบันคุ้มครองผู้บริโภคในกิจการโทรคมนาคม (อังกฤษ: Telecommunications Consumer Protection Institute) หรือ สบท. - จัดตั้งขึ้นโดย กทช. ในปี พ.ศ. 2550 เพื่อดำเนินการต่างๆ ด้านการคุ้มครองผู้บริโภคในกิจการโทรคมนาคมตามแผนแม่บทกิจการโทรคมนาคมแห่งชาติ ฉบับที่ 2[10]
  • สถานีวิทยุ 1 ปณ. - เป็นสถานีวิทยุกระจายเสียงที่ขึ้นตรงกับ สำนักงาน กทช. ทำการส่งกระจายเสียงจากกรุงเทพมหานคร โดยสามารถส่งสัญญาณได้จนถึงปริมณฑล และบริเวณที่ใกล้เคียง ปัจจุบันส่งกระจายเสียงในระบบวีเอชเอฟ ภาค เอฟ เอ็ม ความถี่ 98.5 MHz และ 106.5 MHz แต่ในขณะนี้ทางสถานีฯได้ให้เอกชนเช่าคลื่นความถี่และสัมปทานอยู่

การโอนกิจการ[แก้]

เพื่อให้เป็นไปตามกฎหมายพระราชบัญญัติองค์กรจัดสรรคลื่นความถี่และกำกับกิจการวิทยุกระจายเสียง วิทยุโทรทัศน์ และกิจการโทรคมนาคม พ.ศ. 2543 การโอนกิจการไปสู่การเป็นคณะกรรมการทั้ง 2 องค์กร มีดังต่อไปนี้
  • 19 มกราคม พ.ศ. 2545 หลังจากมีการประกาศใช้ พระราชกฤษฎีกา ยุบกรมไปรษณีย์โทรเลข กระทรวงคมนาคม พุทธศักราช 2545 แล้ว ดังนั้น กรมฯ จึงได้โอนถ่ายบรรดากิจการ ทรัพย์สิน หนี้ หน้าที่ ความรับผิดชอบ การปฏิบัติงานทั้งหมด ไปเป็น สำนักงาน กทช. ส่วนในด้านงบประมาณทั้งเงินเดือนและค่าจ้างของข้าราชการกับลูกจ้างซึ่งยังมีผลครอบครองอยู่ พร้อมกับกลุ่มบุคคลเดิม ไปเป็นหน้าที่ของ สำนักงานปลัดกระทรวงคมนาคม ในมาตรา 82, 83, 84
  • ส่วนในด้านของกรมประชาสัมพันธ์ ได้โอนบรรดากิจการ ทรัพย์สิน สิทธิ หน้าที่ ความรับผิดชอบ งบประมาณ การปฏิบัติงานทั้งหมด ในส่วนของกองงานคณะกรรมการกิจการวิทยุกระจายเสียงและวิทยุโทรทัศน์แห่งชาติ กรมประชาสัมพันธ์ สำนักนายกรัฐมนตรี ไปเป็น สำนักงาน กสช. ส่วนในด้านงบประมาณทั้งเงินเดือนและค่าจ้างของข้าราชการกับลูกจ้างซึ่งยังมีผลครอบครองอยู่ พร้อมกับกลุ่มบุคคลเดิม ให้ยังคงไว้กับกรมประชาสัมพันธ์อยู่เช่นเดิม ในมาตรา 85, 86
ทั้งนี้ กรมไปรษณีย์โทรเลข ถูกยุบเลิกไปเป็น กทช. ตามกฎหมายพระราชกฤษฎีกายุบกรมไปรษณีย์โทรเลข กระทรวงคมนาคม พ.ศ. 2545 เป็นที่เรียบร้อยแล้วนั้น ก็ได้มีการโอนงานฝ่ายแผนงานไปรษณีย์ พ้นจากกรมฯโดยทันที หลังวันเปลี่ยนผ่านไปสังกัดกระทรวงเทคโนโลยีสารสนเทศและการสื่อสาร เป็นต้น ส่วนงานด้านโทรเลข ก็ได้ดำเนินการจนถึงปี พ.ศ. 2551 โดยขึ้นกับ บริษัท ไปรษณีย์ไทย จำกัด
แต่ต่อมา พระราชบัญญัติองค์กรจัดสรรคลื่นความถี่และกำกับกิจการวิทยุกระจายเสียง วิทยุโทรทัศน์ และกิจการโทรคมนาคม พ.ศ. 2553 มีการประกาศบังคับใช้ ทำให้มีการรวมคณะกรรมการทั้งสอง คือ กทช. และ กสช. ไปจัดตั้งใหม่เป็น กสทช. แทน ในวันที่ 20 ธันวาคม ปีเดียวกัน พระราชบัญญัติองค์กรจัดสรรคลื่นความถี่และกำกับการประกอบกิจการกิจการวิทยุกระจายเสียงวิทยุโทรทัศน์และกิจการโทรคมนาคม พ.ศ. 2553 มีผลบังคับใช้ตั้งแต่วันที่ 20 ธันวาคม พ.ศ. 2553 ทำให้สถานะของ กทช. ต้องยุติลง และจัดตั้ง กสทช. ขึ้นแทน
อย่างไรก็ตาม ตามพระราชบัญญัติองค์กรจัดสรรคลื่นความถี่และกำกับกิจการวิทยุกระจายเสียง วิทยุโทรทัศน์ และกิจการโทรคมนาคม พ.ศ. 2553 กำหนดให้มีคณะกรรมการอีก 2 ชุด ภายใต้โครงสร้างของ กสทช. คือ คณะกรรมการกิจการกระจายเสียงและกิจการโทรทัศน์ (กสท.) และคณะกรรมการกิจการโทรคมนาคม (กทค.) ทำหน้าที่ในการกำกับดูแลการกระกอบกิจการในส่วนที่เกี่ยวข้อง โดยคณะกรรมการทั้ง 2 ชุดนั้น ให้แต่งตั้งจากคณะกรรมการ กสทช. โดยให้รองประธาน กสทช. คนหนึ่งทำหน้าที่ประธาน กสท. และรองประธาน กสทช. อีกคนหนึ่ง ทำหน้าที่ประธาน กทค. โดยให้กรรมการ กสทช. ที่มิได้เป็นประธานและรองประธาน กสทช. ที่เหลืออีก 8 คน ทำหน้าที่เป็นกรรมการ กสท. 4 คน และอีก 4 คน ทำหน้าที่กรรมการ กทค.
Credit : http://th.wikipedia.org/wiki/กสทช
Credit : http://www.nbtc.go.th

2.13.2558

FUP

FUP : Fair Usage Policy

FUP เป็นคำย่อมาจากคำเต็มว่า Fair Usage Policy ซึ่งเป็นนโยบายที่ผู้ให้บริการเครือข่ายใช้ในการใช้งานด้านดาต้าของลูกค้าผ่านโทรศัพท์มือถืออย่างเหมาะสม โดยสังเกตว่า แพคเกจ 3G ที่ติดเงื่อนไข FUP นี่จะมีรูปแบบคล้ายๆ กันก็คือ
สามารถใช้อินเทอร์เน็ตบนมือถือที่ระดับความเร็ว 3G ได้ปริมาณหนึ่ง (1-3 GB แล้วแต่แพคเกจและราคา) เมื่อผู้ใช้งานใช้ตามปริมาณครบกำหนดแล้ว ความเร็วอินเทอร์เน็ตจะถูกปรับลง (384 Kbps บ้าง 256 Kbps บ้าง หรือหนักสุดก็เหลือแค่ 64 Kbps บ้าง)  จนเมื่อขึ้นรอบบิลใหม่ ความเร็วก็จะกลับมาเป็นแบบ 3G เหมือนเดิม ทำให้ผู้ใช้งานหลายคนไม่พอใจและออกมาเรียกร้องรวมทั้งโจมตีเหล่าผู้ให้บริการมือถือ
จุดประสงค์ของ FUP ที่เกิดขึ้นมานั้น ถูกกำหนดขึ้นเนื่องจากมีกลุ่มผู้ใช้งานส่วนหนึ่ง  นำโปรโมชั่นการใช้งานดาต้าบนเครือข่าย 3G แบบไม่จำกัดไปใช้งานเพื่อวัตถุประสงค์อื่นๆ อาทิ การนำไปใช้งาน Bit Torrent โดยใช้โทรศัพท์มือถือต่อเป็นโมเด็ม หรือต่อผ่านแอร์การ์ด (Bit Torrent เหมาะสมกับการใช้งานผ่านเทคโนโลยี ADSL มากกว่า) ซึ่งส่งผลกระทบต่อการใช้งานของผู้ใช้งานส่วนที่เหลือ ทำให้ประสิทธิภาพการใช้งาน 3G* ลดลง รวมถึงความเร็วในการใช้งานลดลงด้วย
ทางบรรดาผู้ให้บริการจึงขอกำหนดนโยบายนี้ (FUP) เพื่อบริหารการใช้งาน 3G ของลูกค้าที่ใช้งานไม่เหมาะสม และทำให้ลูกค้าทุกท่านสามารถใช้งาน 3G* ได้อย่างเต็มประสิทธิภาพ ด้วยความเร็วที่เหมาะสมระดับ 3G
ถ้าถามผม ผมมองว่า FUP แม้อาจจะดูเอาเปรียบกับผู้บริโภคสักหน่อย แต่พฤติกรรมของผู้ใช้งานหลายคนก็เอาไปใช้แบบผิดวัตถุประสงค์จริงๆ ครับ เช่นเอาไป ดาวน์โหลดหนัง เพลง โปรแกรม หรือโหลดผ่านบิท ซึ่งการใช้อินเทอร์เน็ตแบบ ADSL จะดีกว่าครับ เพราะระบบ 3G บ้านเรามันยังเป็น 3G เทียมอยู่ครับ ทำให้เกิดผลกระทบเมื่อมีการแย่งการใช้ข้อมูลปริมาณมหาศาล การมี FUP ก็เพื่อเอาไว้จัดระเบียบการใช้งานด้านหนึ่งครับ
หากวันหนึ่งระบบโครงข่าย 3G บ้านเราดีขึ้นเมื่อไหร่ ผมก็หวังว่า FUP คงจะหมดไปจากสารระบบนะครับ 
 หมายเหตุ บรรทัดต่อไปนี้เป็นการแจ้งถึงนโยบาย Fair Usage Policy ของ DTAC นะครับ
FUP หรือ Fair Usage Policy คือนโยบายสากลที่กำหนดขึ้นเพื่อรักษามาตรฐานการใช้งาน 3G อย่างเหมาะสม ซึ่งจะช่วยให้ผู้ใช้บริการ dtac 3G ทุกคนสามารถใช้งานได้อย่างราบรื่น และมีประสิทธิภาพ โดยนโยบายนี้สามารถป้องกันไม่ให้มีการใช้งานบนเครือข่าย 3G ด้วยวัตถุประสงค์ต่างๆ ที่ทำให้ประสิทธิภาพและความเร็วในการใช้งานลดลง เช่น แชร์ไฟล์ผ่าน Bit Torrent หรือดาวน์โหลดและอัพโหลดไฟล์ขนาดใหญ่อย่างต่อเนื่อง ผ่านโมเด็มในโทรศัพท์มือถือ หรือแอร์การ์ด ซึ่งเหมาะกับการใช้งานผ่านเทคโนโลยี ADSL มากกว่า
ดังนั้นดีแทคจึงมีความจำเป็นต้องกำหนดใช้นโยบายดังกล่าวนี้ เพื่อรักษามาตรฐานคุณภาพการรับส่งข้อมูลบนเครือข่าย dtac 3G ให้เหมาะสมและป้องกันไม่ให้เกิดผลกระทบต่อการใช้งาน โดยภายใต้นโยบายนี้ จะทำให้ผู้ใช้บริการทุกคนสามารถใช้บริการ dtac 3G ได้อย่างราบรื่น เต็มประสิทธิภาพ
Credit: http://www.manacomputers.com/fup-fair-usage-policy-internet-package-3g/




ในยุคของการให้บริการเครือข่าย 3G เต็มรูปแบบของเมืองไทยในขณะนี้ หลายคนอาจจะงง กับแพกเกจเล่นเน็ตไม่จำกัด Unlimited แต่มีเงื่อนไขติด FUP ไม่เกินเท่านั้น เท่านี้… แล้วอย่างงี้จะบอกว่า Unlimited มาทำไม จริงมั้ยครับ งั้นเรามาทำความเข้าใจกับเรื่องนี้กัน

FUP คืออะไร
FUP ย่อมาจาก Fair Usage Policy ซึ่งเป็นมาตรการควบคุมการใช้ความเร็วอินเทอร์เน็ตบนเครือข่าย 3G/4G โดยจะมีการลดสปีดความเร็วลง เมื่อใช้งานครบตามปริมาณข้อมูลที่สมัครแพ็กเกจไว้ เช่น เมื่อใช้เน็ตที่ความเร็วสูงสุด 42 Mbps ครบ 3 GB หลังจากนี้จะยังใช้เน็ตได้ตลอดแบบไม่จำกัด แต่จะลดความเร็วลงมาเหลือแค่ 256 Kbps เป็นต้น

แล้วทำไมต้องติด FUP ด้วย
คำถามถัดมาที่ทุกคนสงสัยคือในเมื่อให้สมัครใช้งานแพ็กเกจแบบ Unlimited แล้ว ทำไมถึงมาจำกัดความเร็วการใช้งานกันอีก จะโกงรึเปล่า เรื่องนี้มันมีที่มาครับ เพราะหากผู้ให้บริการปล่อยให้ทุกคนใช้งาน 3G ได้แบบไม่จำกัด ต่างคนต่างดาวน์โหลดกันได้เต็มที่ คราวนี้ก็จะมีคนหัวใสที่ชอบเอาเปรียบผู้อื่น ใช้มือถือต่อเป็นโมเด็มโหลดบิตกันทั้งวันทั้งคืน จนทำให้ความเร็วในการใช้งานโดยรวมของ 3G ลดลง คนอื่นก็จะได้รับผลประทบไม่สามารถดาวน์โหลดหรือใช้งานได้ด้วยความเร็วปกติ ดังนั้นจึงต้องมีการควบคุมการใช้งานตามมาตรการ FUP ที่เป็นมาตรฐานสากล

FUP ที่เหมาะสมคือเท่าไร
ที่ผ่านมาผู้ให้บริการเครือข่ายในเมืองไทย ต่างกำหนดค่า FUP หรือค่าลดสปีดความเร็ว 3G ลงหลังครบแพ็กเกจ ต่ำสุดถึง 64 Kbps ซึ่งในการใช้งานจริงแทบจะโหลดอะไรไม่ขึ้นเลย ฉะนั้นความเร็วเฉลี่ยที่ยอมรับได้ควรจะอยู่ที่ตรงไหนนั้น ตามข้อตกลงที่ กสทช. กำหนดไว้คือ การใช้งานดาต้า 3G จะต้องมีความเร็วต่ำสุด ไม่ต่ำกว่า 345 Kbps

ค่ายไหนให้ FUP แรงที่สุด
เพื่อให้ทุกคนเห็นภาพรวมทั้งหมดว่า ผู้ให้บริการเครือข่ายในเมืองไทยรายหลักๆ มีเงื่อนไขความเร็วของ FUP สูงสุดอยู่ที่เท่าไรกันบ้าง เราจึงขออาสาสำรวจแพ็กเกจของแต่ละค่าย ณ วันที่ 16 ก.ย. 57

• AIS แพ็กเกจ 999 บ. เล่นที่ความเร็ว 3G ได้ปริมาณ 3G หลังใช้ครบ ปรับความเร็วลงไม่เกิน (FUP) 256 Kbps
• dtac แพ็กเกจ 999 บ. เล่นที่ความเร็ว 3G/4G ได้ปริมาณ 3G หลังใช้ครบ ปรับความเร็วลงไม่เกิน (FUP) 384 Kbps
• Truemove H แพ็กเกจ 999 บ. เล่นที่ความเร็ว 3G ได้ปริมาณ 5G หลังใช้ครบ ปรับความเร็วลงไม่เกิน(FUP) 384 Kbps
• 365 แพ็กเกจ 999 บ. เล่นที่ความเร็ว 3G ได้ปริมาณ 5G หลังใช้ครบ ปรับความเร็วลงไม่เกิน (FUP) 384 Kbps

จากการสำรวจพบว่าแพ็กเกจสูงสุด 999 บ. ของแต่ละค่ายจะมีค่า FUP เฉลี่ยมากกว่าข้อกำหนดของ กสทช. จะมีเพียง AIS เจ้าเดียวที่ยังไม่ถึงเกณฑ์ และพบข้อสังเกตอีกอย่างคือ ทั้ง AIS, dtac, Truemove H หากใช้แพ็กเกจที่ต่ำกว่านี้ ก็จะถูกลดความเร็วของ FUP ลงไปอีก เป็น 128 Kbps จนถึง 64 Kbps ในแพ็กเกจที่ราคาต่ำสุด ยกเว้น 365 ที่จะให้ FUP ที่ 384 Kbps ทุกแพกเกจ ซึ่งมาตรฐานส่วนนี้แหละที่น่าจะต้องมีการผลักดันให้ได้ตามข้อกำหนดที่ กสทช. วางไว้