โปรโตคอลการเริ่มต้นเซสชัน

จากวิกิพีเดีย สารานุกรมเสรี
ข้ามไปที่การนำทาง ข้ามไปที่การค้นหา

Session Initiation Protocol ( SIP ) เป็นโปรโตคอลการส่งสัญญาณที่ใช้สำหรับการเริ่มต้นการรักษาและการยกเลิกการประชุมในเวลาจริงที่รวมเสียงวิดีโอและการประยุกต์ใช้การส่งข้อความ[1] SIP ใช้สำหรับส่งสัญญาณและควบคุมเซสชันการสื่อสารมัลติมีเดียในแอปพลิเคชันของโทรศัพท์ทางอินเทอร์เน็ตสำหรับการโทรด้วยเสียงและวิดีโอ ในระบบโทรศัพท์ IP ส่วนตัว ในการส่งข้อความโต้ตอบแบบทันทีผ่านเครือข่ายInternet Protocol (IP) รวมถึงการโทรผ่านโทรศัพท์มือถือผ่านLTE ( VoLTE) ).

โปรโตคอลกำหนดรูปแบบเฉพาะของข้อความที่แลกเปลี่ยนและลำดับของการสื่อสารเพื่อความร่วมมือของผู้เข้าร่วม SIP เป็นโปรโตคอลแบบข้อความ ซึ่งรวมองค์ประกอบหลายอย่างของHypertext Transfer Protocol (HTTP) และSimple Mail Transfer Protocol (SMTP) [2]การเรียกที่สร้างด้วย SIP อาจประกอบด้วยการสตรีมสื่อหลายรายการแต่ไม่จำเป็นต้องใช้สตรีมแยกต่างหากสำหรับแอปพลิเคชัน เช่น การส่งข้อความที่แลกเปลี่ยนข้อมูลเป็นเพย์โหลดในข้อความ SIP

SIP ทำงานร่วมกับโปรโตคอลอื่น ๆ ที่ระบุและดำเนินการสื่อเซสชัน โดยทั่วไป การเจรจาประเภทสื่อและพารามิเตอร์และการตั้งค่าสื่อจะดำเนินการด้วยSession Description Protocol (SDP) ซึ่งถือเป็นเพย์โหลดในข้อความ SIP SIP ได้รับการออกแบบมาให้ไม่ขึ้นกับโปรโตคอลTransport Layerพื้นฐานและสามารถใช้กับUser Datagram Protocol (UDP), Transmission Control Protocol (TCP) และStream Control Transmission Protocol (SCTP) สำหรับการส่งข้อความ SIP อย่างปลอดภัยผ่านลิงก์เครือข่ายที่ไม่ปลอดภัย โปรโตคอลอาจถูกเข้ารหัสด้วยTransport Layer Security(TLS). สำหรับการส่งกระแสข้อมูลสื่อ (เสียง วิดีโอ) เพย์โหลด SDP ที่มีในข้อความ SIP มักใช้Real-time Transport Protocol (RTP) หรือSecure Real-time Transport Protocol (SRTP)

ประวัติ

SIP ได้รับการออกแบบมาโดยมาร์ค Handley , Henning Schulzrinneอีฟ Schooler และโจนาธานโรเซนเบิร์กในปี 1996 เพื่ออำนวยความสะดวกในการสร้างหลายผู้รับประชุมมัลติมีเดียบนMBONE โปรโตคอลได้รับมาตรฐานเป็นRFC  2543ในปี 2542 ในเดือนพฤศจิกายน 2543 SIP ได้รับการยอมรับว่าเป็นโปรโตคอลการส่งสัญญาณ3GPPและองค์ประกอบถาวรของสถาปัตยกรรมIP Multimedia Subsystem (IMS) สำหรับบริการมัลติมีเดียสตรีมมิ่งบน IP ในเครือข่ายเซลลูลาร์ ในเดือนมิถุนายน พ.ศ. 2545 ได้มีการแก้ไขข้อกำหนดในRFC 3261 [3] และมีการเผยแพร่ส่วนขยายและการชี้แจงต่างๆตั้งแต่นั้นเป็นต้นมา [4]

SIP ได้รับการออกแบบมาเพื่อให้สัญญาณและโปรโตคอลการตั้งค่าการโทรสำหรับการสื่อสารผ่าน IP ที่สนับสนุนฟังก์ชันการประมวลผลการโทรและคุณลักษณะที่มีอยู่ในเครือข่ายโทรศัพท์สาธารณะ (PSTN) ด้วยวิสัยทัศน์ในการสนับสนุนแอปพลิเคชันมัลติมีเดียใหม่ มันได้รับการขยายระยะเวลาการประชุมทางวิดีโอ , สตรีมมิ่งสื่อการกระจายการส่งข้อความแบบทันที , ข้อมูลการแสดงตน , การถ่ายโอนไฟล์ , โทรสารอินเทอร์เน็ตและเกมออนไลน์ [1] [5] [6]

SIP มีความโดดเด่นโดยผู้เสนอมันมีรากในชุมชนอินเทอร์เน็ตมากกว่าในอุตสาหกรรมโทรคมนาคม SIP ได้รับการสร้างมาตรฐานโดยInternet Engineering Task Force (IETF) เป็นหลัก ในขณะที่โปรโตคอลอื่นๆ เช่นH.323นั้นมักจะเกี่ยวข้องกับInternational Telecommunication Union (ITU)

การทำงานของโปรโตคอล

SIP เกี่ยวข้องเฉพาะในการดำเนินการส่งสัญญาณของเซสชันการสื่อสารผ่านสื่อ และใช้เพื่อตั้งค่าและยุติการโทรด้วยเสียงหรือวิดีโอเป็นหลัก SIP สามารถใช้เพื่อสร้างเซสชันสองฝ่าย ( unicast ) หรือหลายฝ่าย ( multicast ) นอกจากนี้ยังอนุญาตให้แก้ไขการโทรที่มีอยู่ การแก้ไขอาจเกี่ยวข้องกับการเปลี่ยนที่อยู่หรือพอร์ตเชิญผู้เข้าร่วมเพิ่ม และเพิ่มหรือลบสตรีมสื่อ SIP ยังพบแอปพลิเคชันในแอปพลิเคชันการรับส่งข้อความ เช่น การส่งข้อความโต้ตอบแบบทันที การสมัครรับข้อมูลและการแจ้งเตือนเหตุการณ์

SIP ทำงานร่วมกับโปรโตคอลอื่นๆ ที่ระบุรูปแบบสื่อและการเข้ารหัส และมีเดียเมื่อตั้งค่าการโทร สำหรับการตั้งค่าการโทร เนื้อหาของข้อความ SIP จะมีหน่วยข้อมูลSession Description Protocol (SDP) ซึ่งระบุรูปแบบสื่อ ตัวแปลงสัญญาณ และโปรโตคอลการสื่อสารสื่อ โดยทั่วไปแล้ว กระแสข้อมูลสื่อเสียงและวิดีโอจะดำเนินการระหว่างเทอร์มินัลโดยใช้Real-time Transport Protocol (RTP) หรือSecure Real-time Transport Protocol (SRTP) [2] [7]

ทรัพยากรทั้งหมดของเครือข่าย SIP เช่น ตัวแทนผู้ใช้ เราเตอร์การโทร และกล่องข้อความเสียง จะถูกระบุโดยUniform Resource Identifier (URI) ไวยากรณ์ของ URI เป็นไปตามรูปแบบมาตรฐานทั่วไปที่ใช้ในบริการเว็บและอีเมล[8]รูปแบบ URI ที่ใช้สำหรับ SIP คือsipและ SIP URI ทั่วไปมีรูปแบบsip:username@domainnameหรือsip:username@hostportโดยที่domainnameต้องการระเบียน DNS SRVเพื่อค้นหาเซิร์ฟเวอร์สำหรับโดเมน SIP ในขณะที่hostportสามารถเป็นIP ได้ ที่อยู่หรือชื่อโดเมนแบบเต็มของโฮสต์และพอร์ต ถ้าส่งที่เชื่อถือได้จำเป็นต้องมีโครงการจิบถูกนำมาใช้ [9] [10]

SIP ใช้องค์ประกอบการออกแบบที่คล้ายกับรูปแบบธุรกรรมคำขอ HTTP และการตอบสนอง [11]แต่ละธุรกรรมประกอบด้วยคำขอของลูกค้าที่เรียกใช้วิธีการหรือฟังก์ชันเฉพาะบนเซิร์ฟเวอร์และการตอบสนองอย่างน้อยหนึ่งครั้ง SIP นำฟิลด์ส่วนหัว กฎการเข้ารหัส และรหัสสถานะของ HTTP กลับมาใช้ใหม่ โดยให้รูปแบบข้อความที่อ่านได้

SIP สามารถดำเนินการได้ด้วยโปรโตคอลเลเยอร์การขนส่งหลายตัวรวมถึงTransmission Control Protocol (TCP), User Datagram Protocol (UDP) และStream Control Transmission Protocol (SCTP) [12] [13] ไคลเอ็นต์ SIP มักใช้ TCP หรือ UDP บนหมายเลขพอร์ต 5060 หรือ 5061 สำหรับการรับส่งข้อมูล SIP ไปยังเซิร์ฟเวอร์และปลายทางอื่นๆ โดยทั่วไปแล้วพอร์ต 5060 จะใช้สำหรับการรับส่งข้อมูลการส่งสัญญาณที่ไม่ได้เข้ารหัส ในขณะที่พอร์ต 5061 มักใช้สำหรับการรับส่งข้อมูลที่เข้ารหัสด้วยTransport Layer Security (TLS)

เครือข่ายโทรศัพท์ที่ใช้ SIP มักจะใช้คุณสมบัติการประมวลผลการโทรของระบบสัญญาณ 7 (SS7) ซึ่งมีส่วนขยายโปรโตคอล SIP พิเศษอยู่ แม้ว่าโปรโตคอลทั้งสองจะต่างกันมาก SS7 เป็นโปรโตคอลแบบรวมศูนย์ มีลักษณะเป็นสถาปัตยกรรมเครือข่ายกลางที่ซับซ้อนและปลายทางที่โง่ (เครื่องโทรศัพท์แบบเดิม) SIP เป็นโปรโตคอลไคลเอนต์ - เซิร์ฟเวอร์ของเพียร์ที่เท่าเทียมกัน ฟีเจอร์ SIP ถูกนำไปใช้ในปลายทางการสื่อสาร ในขณะที่สถาปัตยกรรม SS7 ดั้งเดิมมีการใช้งานระหว่างศูนย์สวิตชิ่งเท่านั้น

องค์ประกอบเครือข่าย

องค์ประกอบของเครือข่ายที่ใช้ Session Initiation Protocol สำหรับการสื่อสารที่เรียกว่าตัวแทนผู้ใช้ SIPแต่ละตัวแทนผู้ใช้ (UA) ทำหน้าที่ของไคลเอ็นต์ตัวแทนผู้ใช้ (UAC) เมื่อร้องขอฟังก์ชันบริการ และของเซิร์ฟเวอร์ตัวแทนผู้ใช้ (UAS) เมื่อตอบสนองต่อคำขอ ดังนั้น โดยหลักการแล้ว SIP endpoint สองจุดใด ๆ อาจทำงานโดยไม่มีโครงสร้างพื้นฐาน SIP ใด ๆ ที่แทรกแซง อย่างไรก็ตาม ด้วยเหตุผลด้านการทำงานของเครือข่าย สำหรับการจัดเตรียมบริการสาธารณะให้กับผู้ใช้ และสำหรับบริการไดเร็กทอรี SIP จะกำหนดองค์ประกอบเซิร์ฟเวอร์เครือข่ายเฉพาะหลายประเภท แต่ละองค์ประกอบบริการเหล่านี้ยังสื่อสารภายในโมเดลไคลเอนต์ - เซิร์ฟเวอร์ที่ใช้งานในไคลเอนต์ตัวแทนผู้ใช้และเซิร์ฟเวอร์[14]

ตัวแทนผู้ใช้

ตัวแทนผู้ใช้เป็นจุดสิ้นสุดของเครือข่ายแบบลอจิคัลที่ส่งหรือรับข้อความ SIP และจัดการเซสชัน SIP ตัวแทนผู้ใช้มีส่วนประกอบไคลเอ็นต์และเซิร์ฟเวอร์ ไคลเอ็นต์ตัวแทนผู้ใช้ (UAC) ส่งคำขอ SIP เซิร์ฟเวอร์ตัวแทนผู้ใช้ (UAS) รับคำขอและส่งคืนการตอบกลับ SIP ต่างจากโปรโตคอลเครือข่ายอื่น ๆ ที่แก้ไขบทบาทของไคลเอนต์และเซิร์ฟเวอร์ เช่น ใน HTTP ซึ่งเว็บเบราว์เซอร์ทำหน้าที่เป็นไคลเอนต์เท่านั้น และไม่เคยเป็นเซิร์ฟเวอร์ SIP ต้องการให้เพื่อนทั้งสองใช้งานทั้งสองบทบาท บทบาทของ UAC และ UAS จะคงอยู่ในช่วงเวลาของธุรกรรม SIP เท่านั้น [5]

โทรศัพท์ SIP คือโทรศัพท์IPที่ใช้ฟังก์ชันไคลเอ็นต์และเซิร์ฟเวอร์ของตัวแทนผู้ใช้ SIP และให้ฟังก์ชันการโทรแบบเดิมของโทรศัพท์ เช่น โทรออก รับสาย ปฏิเสธ พักสาย และโอนสาย[15] [16]โทรศัพท์ SIP สามารถใช้เป็นอุปกรณ์ฮาร์ดแวร์หรือเป็นซอฟต์โฟนได้ในฐานะที่เป็นผู้ขายมากขึ้นใช้ SIP เป็นแพลตฟอร์มโทรศัพท์มาตรฐานความแตกต่างระหว่างฮาร์ดแวร์และซอฟต์แวร์ที่ใช้โทรศัพท์ SIP เป็นเบลอและองค์ประกอบ SIP จะดำเนินการในฟังก์ชั่นพื้นฐานของเฟิร์มแวอุปกรณ์สื่อสาร IP ที่มีความสามารถหลายอย่างเช่นมาร์ทโฟน

ใน SIP เช่นเดียวกับใน HTTP ตัวแทนผู้ใช้อาจระบุตัวเองโดยใช้ฟิลด์ส่วนหัวของข้อความ ( User-Agent ) ที่มีคำอธิบายข้อความของซอฟต์แวร์ ฮาร์ดแวร์ หรือชื่อผลิตภัณฑ์ ฟิลด์ตัวแทนผู้ใช้ถูกส่งในข้อความร้องขอ ซึ่งหมายความว่าเซิร์ฟเวอร์ SIP ที่ได้รับสามารถประเมินข้อมูลนี้เพื่อดำเนินการกำหนดค่าเฉพาะอุปกรณ์หรือเปิดใช้งานคุณสมบัติ ผู้ดำเนินการองค์ประกอบเครือข่าย SIP บางครั้งจัดเก็บข้อมูลนี้ในพอร์ทัลบัญชีลูกค้า[17]ซึ่งมีประโยชน์ในการวินิจฉัยปัญหาความเข้ากันได้ของ SIP หรือในการแสดงสถานะการบริการ

พร็อกซีเซิร์ฟเวอร์

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

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

เปลี่ยนเส้นทางเซิร์ฟเวอร์

เซิร์ฟเวอร์เปลี่ยนเส้นทางคือเซิร์ฟเวอร์ตัวแทนผู้ใช้ที่สร้างการตอบสนอง 3xx (การเปลี่ยนเส้นทาง) ต่อคำขอที่ได้รับ โดยสั่งให้ไคลเอ็นต์ติดต่อชุด URI สำรอง เซิร์ฟเวอร์เปลี่ยนเส้นทางอนุญาตให้พร็อกซีเซิร์ฟเวอร์ส่งคำเชิญเซสชัน SIP ไปยังโดเมนภายนอก

นายทะเบียน

การลงทะเบียนตัวแทนผู้ใช้ SIP กับผู้รับจดทะเบียน SIP พร้อมการรับรองความถูกต้อง

ผู้รับจดทะเบียนคือปลายทาง SIP ที่ให้บริการตำแหน่ง ยอมรับคำขอ REGISTER บันทึกที่อยู่และพารามิเตอร์อื่น ๆ จากตัวแทนผู้ใช้ สำหรับคำขอที่ตามมา มีวิธีการที่จำเป็นในการค้นหาเพื่อนสื่อสารที่เป็นไปได้บนเครือข่าย บริการระบุตำแหน่งจะเชื่อมโยงที่อยู่ IP หนึ่งรายการขึ้นไปกับ SIP URI ของตัวแทนการลงทะเบียน ตัวแทนผู้ใช้หลายรายอาจลงทะเบียนสำหรับ URI เดียวกัน ส่งผลให้ตัวแทนผู้ใช้ที่ลงทะเบียนทั้งหมดได้รับการเรียกไปยัง URI

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

ตัวควบคุมเส้นขอบของเซสชัน

สถานประกอบการของเซสชั่นผ่านตัวแทนของผู้ใช้กลับไปกลับ

เซสชั่นควบคุมชายแดน (SBCs) ทำหน้าที่เป็นmiddleboxesระหว่างตัวแทนผู้ใช้และเซิร์ฟเวอร์ SIP หลากหลายชนิดฟังก์ชั่นรวมถึงการหลบซ่อนตัวโครงสร้างเครือข่ายและความช่วยเหลือในการข้ามผ่าน NAT SBC เป็นโซลูชันที่ออกแบบอย่างอิสระและไม่ได้กล่าวถึงใน SIP RFC

เกตเวย์

สามารถใช้เกตเวย์เพื่อเชื่อมต่อเครือข่าย SIP กับเครือข่ายอื่น เช่น PSTN ซึ่งใช้โปรโตคอลหรือเทคโนโลยีที่แตกต่างกัน

ข้อความ SIP

SIP เป็นโปรโตคอลแบบข้อความที่มีรูปแบบคล้ายกับ HTTP ข้อความ SIP มีสองประเภท: คำขอและการตอบกลับ บรรทัดแรกของคำขอมีเมธอดกำหนดลักษณะของคำขอ และคำขอ-URI ซึ่งระบุว่าควรส่งคำขอไปที่ใด [18]บรรทัดแรกของการตอบสนองมีรหัสการตอบสนอง

คำขอ

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

คำขอ SIP
ขอชื่อ คำอธิบาย หมายเหตุ การอ้างอิง RFC
ลงทะเบียน ลงทะเบียน URI ที่แสดงอยู่ในฟิลด์ To-header กับเซิร์ฟเวอร์ตำแหน่ง และเชื่อมโยงกับที่อยู่เครือข่ายที่ให้ไว้ในฟิลด์ส่วนหัวของผู้ติดต่อ คำสั่งใช้บริการตำแหน่ง RFC  3261
เชิญ เริ่มต้นกล่องโต้ตอบสำหรับการโทร คำขอถูกส่งโดยไคลเอ็นต์ตัวแทนผู้ใช้ไปยังเซิร์ฟเวอร์ตัวแทนผู้ใช้ เมื่อส่งระหว่างกล่องโต้ตอบที่สร้างขึ้น ( reinvite ) จะแก้ไขเซสชัน เช่น พักสาย RFC  3261
ACK ยืนยันว่าเอนทิตีได้รับการตอบกลับครั้งสุดท้ายต่อคำขอ INVITE RFC  3261
ลาก่อน สัญญาณยุติการสนทนาและสิ้นสุดการโทร ข้อความนี้อาจถูกส่งโดยปลายทางของไดอะล็อก RFC  3261
ยกเลิก ยกเลิกคำขอที่รอดำเนินการ โดยทั่วไปหมายถึงการยกเลิกการโทรในขณะที่ยังมีเสียงเรียกเข้าอยู่ ก่อนที่จะรับสาย RFC  3261
อัปเดต แก้ไขสถานะของเซสชันโดยไม่เปลี่ยนสถานะของไดอะล็อก RFC  3311
อ้างอิง ขอให้ผู้รับออกคำขอเพื่อวัตถุประสงค์ในการโอนสาย RFC  3515
PRACK รับทราบชั่วคราว. ส่ง PRACK เพื่อตอบสนองต่อการตอบสนองชั่วคราว (1xx) RFC  3262
ติดตาม เริ่มต้นการสมัครรับการแจ้งเตือนเหตุการณ์จากผู้แจ้ง RFC  6665
แจ้ง แจ้งสมาชิกการแจ้งเตือนเหตุการณ์ใหม่ RFC  6665
เผยแพร่ เผยแพร่เหตุการณ์ไปยังเซิร์ฟเวอร์การแจ้งเตือน อาร์เอฟซี 3903
ข้อความ ส่งข้อความ ใช้ในแอปพลิเคชันการส่งข้อความโต้ตอบแบบทันที RFC  3428
ข้อมูล ส่งข้อมูลระหว่างเซสชันที่ไม่แก้ไขสถานะเซสชัน วิธีนี้มักใช้สำหรับรีเลย์ DTMF RFC  6086
ตัวเลือก สอบถามความสามารถของปลายทาง มันก็มักจะใช้สำหรับ NAT keepaliveวัตถุประสงค์ RFC  3261

ตอบกลับ

การตอบสนองถูกส่งโดยเซิร์ฟเวอร์ตัวแทนผู้ใช้ซึ่งระบุผลลัพธ์ของคำขอที่ได้รับ การตอบสนองหลายระดับได้รับการยอมรับ โดยกำหนดโดยช่วงตัวเลขของรหัสผลลัพธ์: [19]

  • 1xx: การตอบกลับคำขอชั่วคราวระบุว่าคำขอนั้นถูกต้องและกำลังดำเนินการอยู่
  • 2xx: ดำเนินการตามคำขอสำเร็จ เพื่อเป็นการตอบสนองต่อคำเชิญ แสดงว่ามีการโทรออกแล้ว รหัสที่พบบ่อยที่สุดคือ 200 ซึ่งเป็นรายงานความสำเร็จอย่างไม่มีเงื่อนไข
  • 3xx: จำเป็นต้องมีการเปลี่ยนเส้นทางการโทรเพื่อให้คำขอเสร็จสมบูรณ์ คำขอจะต้องเสร็จสิ้นด้วยปลายทางใหม่
  • 4xx: ไม่สามารถดำเนินการตามคำขอที่เซิร์ฟเวอร์ได้ด้วยเหตุผลหลายประการ รวมถึงไวยากรณ์คำขอที่ไม่ถูกต้อง (รหัส 400)
  • 5xx: เซิร์ฟเวอร์ล้มเหลวในการตอบสนองคำขอที่ถูกต้อง รวมถึงข้อผิดพลาดภายในของเซิร์ฟเวอร์ (รหัส 500)
  • 6xx: ไม่สามารถดำเนินการตามคำขอที่เซิร์ฟเวอร์ใด ๆ ซึ่งบ่งชี้ถึงความล้มเหลวทั่วโลก รวมถึงการปฏิเสธการโทรจากปลายทาง

ธุรกรรม

ตัวอย่าง: UAC ของผู้ใช้1 ใช้ธุรกรรมไคลเอ็นต์เชิญเพื่อส่งข้อความ INVITE (1) เริ่มต้น หากไม่ได้รับการตอบกลับหลังจากระยะเวลารอที่ควบคุมโดยตัวจับเวลา UAC อาจเลือกที่จะยุติธุรกรรมหรือส่งคำเชิญอีกครั้ง เมื่อได้รับการตอบกลับ User1 มั่นใจว่า INVITE นั้นส่งได้อย่างน่าเชื่อถือ UAC ของผู้ใช้ 1 จะต้องรับทราบคำตอบ ในการส่งมอบ ACK (2) การทำธุรกรรมทั้งสองด้านจะเสร็จสมบูรณ์ ในกรณีนี้ อาจมีการสร้างไดอะล็อกขึ้น(20)

SIP กำหนดกลไกการทำธุรกรรมเพื่อควบคุมการแลกเปลี่ยนระหว่างผู้เข้าร่วมและส่งข้อความอย่างน่าเชื่อถือ ธุรกรรมคือสถานะของเซสชันซึ่งควบคุมโดยตัวจับเวลาต่างๆ ธุรกรรมของลูกค้าส่งคำขอและธุรกรรมเซิร์ฟเวอร์ตอบสนองต่อคำขอเหล่านั้นด้วยการตอบกลับอย่างน้อยหนึ่งรายการ คำตอบอาจรวมถึงการตอบกลับชั่วคราวด้วยรหัสตอบกลับในรูปแบบ1xxและคำตอบสุดท้ายหนึ่งหรือหลายรายการ (2xx – 6xx)

การทำธุรกรรมต่อไปมีการแบ่งประเภทเป็นชนิดทั้งเชิญหรือประเภทที่ไม่ได้เชิญ เชิญทำธุรกรรมที่แตกต่างกันในการที่พวกเขาสามารถสร้างการสนทนายาวทำงานเรียกว่าโต้ตอบใน SIP และอื่น ๆ รวมถึงการรับรู้ (ACK) ของการตอบสนองใด ๆ สุดท้ายไม่ใช่ความล้มเหลวเช่น200 ตกลง

ข้อความโต้ตอบแบบทันทีและการแสดงตน

Session Initiation Protocol สำหรับ Instant Messaging และการแสดงตนใช้ประโยชน์จากส่วนขยาย (แบบง่าย) เป็นชุด SIP-based ของมาตรฐานสำหรับการส่งข้อความโต้ตอบแบบทันทีและข้อมูลการแสดงตน Message Session Relay Protocol (MSRP) อนุญาตให้มีเซสชันข้อความโต้ตอบแบบทันทีและการถ่ายโอนไฟล์

การทดสอบความสอดคล้อง

ชุมชนนักพัฒนา SIP พบปะกันเป็นประจำในการประชุมที่จัดโดย SIP Forum เพื่อทดสอบการทำงานร่วมกันของการใช้งาน SIP [21] TTCN-3การทดสอบภาษาสเปคที่พัฒนาโดยทีมงานที่ETSI (STF 196) ใช้สำหรับการระบุการทดสอบความสอดคล้องสำหรับการใช้ SIP [22]

การทดสอบประสิทธิภาพ

เมื่อพัฒนาซอฟต์แวร์ SIP หรือปรับใช้โครงสร้างพื้นฐาน SIP ใหม่ สิ่งสำคัญคือต้องทดสอบความสามารถของเซิร์ฟเวอร์และเครือข่าย IP เพื่อจัดการกับภาระการโทรบางอย่าง: จำนวนการโทรพร้อมกันและจำนวนการโทรต่อวินาที ซอฟต์แวร์ทดสอบประสิทธิภาพ SIP ใช้เพื่อจำลองการรับส่งข้อมูล SIP และ RTP เพื่อดูว่าเซิร์ฟเวอร์และเครือข่าย IP มีความเสถียรภายใต้ภาระการโทรหรือไม่ [23]ตัวชี้วัดประสิทธิภาพมาตรการซอฟต์แวร์เช่นความล่าช้าคำตอบคำตอบ / อัตราส่วนการจับกุม , RTP กระวนกระวายใจและแพ็คเก็ตการสูญเสีย , round-trip หน่วงเวลา

แอปพลิเคชัน

การเชื่อมต่อ SIPเป็นคำศัพท์ทางการตลาดสำหรับบริการVoice over Internet Protocol (VoIP) ที่นำเสนอโดยผู้ให้บริการโทรศัพท์ทางอินเทอร์เน็ต (ITSP) บริการนี้กำหนดเส้นทางการโทรจากระบบโทรศัพท์แลกเปลี่ยนสาขาส่วนตัว (PBX) ของลูกค้าไปยัง PSTN บริการดังกล่าวอาจทำให้โครงสร้างพื้นฐานของระบบข้อมูลขององค์กรง่ายขึ้นโดยการแบ่งปันการเข้าถึงอินเทอร์เน็ตสำหรับเสียงและข้อมูล และลดต้นทุนสำหรับวงจรโทรศัพท์Basic Rate Interface (BRI) หรือPrimary Rate Interface (PRI)

การเดินสายไฟ SIPเป็นคำศัพท์ทางการตลาดที่คล้ายกันซึ่งเป็นที่นิยมเมื่อใช้บริการเพื่อทำให้โครงสร้างพื้นฐานโทรคมนาคมง่ายขึ้นโดยการแบ่งปันวงจรการเข้าถึงของผู้ให้บริการสำหรับเสียง ข้อมูล และการรับส่งข้อมูลทางอินเทอร์เน็ต ในขณะที่ไม่จำเป็นต้องใช้วงจร PRI [24] [25]

กล้องเฝ้าระวังวิดีโอที่เปิดใช้งาน SIP สามารถเริ่มการโทรเพื่อแจ้งเตือนผู้ดำเนินการเหตุการณ์ เช่น การเคลื่อนไหวของวัตถุในพื้นที่คุ้มครอง

SIP ใช้ในเสียงผ่าน IPสำหรับแอปพลิเคชั่นการออกอากาศซึ่งมีวิธีการทำงานร่วมกันสำหรับอินเทอร์เฟซเสียงจากผู้ผลิตหลายรายเพื่อทำการเชื่อมต่อซึ่งกันและกัน (26)

การใช้งาน

สถาบันมาตรฐานและเทคโนโลยีแห่งชาติของสหรัฐอเมริกา(NIST) แผนกเทคโนโลยีเครือข่ายขั้นสูงได้จัดเตรียมการใช้งานJava ที่เป็นสาธารณสมบัติ[27]ซึ่งทำหน้าที่เป็นข้อมูลอ้างอิงสำหรับมาตรฐาน การใช้งานสามารถทำงานในสถานการณ์จำลองพร็อกซีเซิร์ฟเวอร์หรือตัวแทนผู้ใช้ และมีการใช้ในโครงการเชิงพาณิชย์และการวิจัยจำนวนมาก รองรับRFC 3261ทั้งหมดและ RFC ส่วนขยายจำนวนหนึ่งรวมถึงRFC 6665 (การแจ้งเตือนเหตุการณ์) และRFC 3262 (การตอบสนองชั่วคราวที่เชื่อถือได้)    

มีการใช้งาน SIP เชิงพาณิชย์และโอเพ่นซอร์สอื่น ๆ มากมาย ดูรายชื่อของซอฟต์แวร์ SIP

การทำงานร่วมกันของ SIP-ISUP

SIP-I, Session Initiation Protocol ที่มีISUPห่อหุ้มเป็นโปรโตคอลที่ใช้ในการสร้าง แก้ไข และยุติเซสชันการสื่อสารตาม ISUP โดยใช้เครือข่าย SIP และ IP บริการที่ใช้ SIP-I ได้แก่ เสียง โทรศัพท์วิดีโอ โทรสาร และข้อมูล SIP-I และ SIP-T [28]เป็นโปรโตคอลสองโปรโตคอลที่มีคุณสมบัติคล้ายคลึงกัน โดยเฉพาะอย่างยิ่งเพื่ออนุญาตให้ส่งข้อความ ISUP ผ่านเครือข่าย SIP ซึ่งจะรักษารายละเอียดทั้งหมดที่มีอยู่ในส่วนหัวของ ISUP [เป็น] SIP-ฉันถูกกำหนดโดยITU-Tขณะ SIP-T ถูกกำหนดโดยIETF [29]

การเข้ารหัส

ความกังวลเกี่ยวกับการรักษาความปลอดภัยของการโทรผ่านอินเทอร์เน็ตสาธารณะที่ได้รับการแก้ไขโดยการเข้ารหัสของโปรโตคอล SIP สำหรับการส่งที่เชื่อถือได้ URI Scheme SIPS ใช้เพื่อกำหนดให้การสื่อสาร SIP นั้นปลอดภัยด้วยTransport Layer Security (TLS) SIPS URI ที่ใช้รูปแบบจิบ: [email protected]

การเข้ารหัสจากต้นทางถึงปลายทางของ SIP จะทำได้ก็ต่อเมื่อมีการเชื่อมต่อโดยตรงระหว่างปลายทางการสื่อสาร ในขณะที่การเชื่อมต่อโดยตรงสามารถทำผ่านPeer-to-peer SIPหรือผ่านทางVPNระหว่างปลายทางการสื่อสาร SIP ที่สุดเกี่ยวกับการกระโดดหลายกับฮอปเป็นครั้งแรกจากตัวแทนผู้ใช้ที่จะเป็นตัวแทนของผู้ใช้ITSPสำหรับเคสแบบมัลติฮอป SIPS จะปกป้องฮอปแรกเท่านั้น โดยปกติฮ็อพที่เหลือจะไม่ปลอดภัยด้วย TLS และการสื่อสาร SIP จะไม่ปลอดภัย ในทางตรงกันข้ามโปรโตคอลHTTPSให้การรักษาความปลอดภัยแบบ end-to-end เช่นเดียวกับที่ทำกับการเชื่อมต่อโดยตรง และไม่เกี่ยวข้องกับแนวคิดของการกระโดด

สตรีมสื่อ (เสียงและวิดีโอ) ซึ่งแยกการเชื่อมต่อจากสตรีมสัญญาณ SIPS อาจถูกเข้ารหัสโดยใช้ SRTP การแลกเปลี่ยนคีย์สำหรับ SRTP ดำเนินการกับSDES ( RFC 4568 ) หรือกับZRTP ( RFC 6189 ) เมื่อใช้ SDES คีย์จะถูกส่งผ่าน SIP ที่ไม่ปลอดภัย เว้นแต่จะใช้ SIPS เราอาจเพิ่มการแลกเปลี่ยน MIKEY ( RFC 3830 ) เป็น SIP เพื่อกำหนดคีย์เซสชันสำหรับใช้กับ SRTP    

ดูเพิ่มเติม

หมายเหตุ

  1. ^ รายละเอียด ISUP มีความสำคัญ เนื่องจากมี ISUP แบบเฉพาะประเทศจำนวนมากที่มีการใช้งานในช่วง 30 ปีที่ผ่านมา และไม่สามารถแสดงรายละเอียดเดียวกันทั้งหมดโดยใช้ข้อความ SIP ดั้งเดิมได้เสมอไป

อ้างอิง

  1. ^ a b "SIP คืออะไร" . เครือข่ายโลก . 11 พฤษภาคม 2547
  2. อรรถเป็น จอห์นสตัน อลัน บี. (2004). SIP: ทำความเข้าใจกับ Session Initiation Protocol ( ฉบับที่สอง) บ้านอาร์เทค. ISBN 978-1-58053-168-9.
  3. ^ "กฎบัตรคณะทำงานหลัก SIP" . Internet Engineering Task Force 2010-12-07 . สืบค้นเมื่อ2011-01-11 .
  4. ^ "ค้นหา Internet-Drafts และ RFCs" . Internet Engineering Task Force
  5. ^ SIP: Session Initiation Protocol 2545. ดอย : 10.17487/RFC3261 . อาร์เอฟซี3261 .
  6. ^ มาร์กาเร็ปลุก "Session Initiation Protocol (SIP)" เทคทาร์เก็ท .
  7. ^ คอลล์, เอริค (2016). เทเลคอม 101 . สถาบันฝึกอบรมเทราคอม น. 77–79. ISBN 9781894887038.
  8. ^ ทรัพยากรตัวบ่งชี้ (URI): ทั่วไปไวยากรณ์ 2548. ดอย : 10.17487/RFC3986 . อาร์เอฟซี3986 .
  9. ^ Miikka Poikselkä et al, 2547 .
  10. ^ ไบรอัน รีด & สตีฟ กู๊ดแมน 2015 .
  11. ^ "SIP: Session Initiation Protocol" IETF
  12. ^ กระแสควบคุมเกียร์ Protocol (SCTP) เป็นขนส่งสำหรับ Session Initiation Protocol (SIP) 2548. ดอย : 10.17487/RFC4168 . อาร์เอฟซี4168 .
  13. ^ Montazerolghaem, Ahmadreza; ฮอสเซนี เซโน, เซย์เอด อามิน; Yaghmaee, โมฮัมหมัด Hossein; แทชทาเรียน, ฟาร์ซาด (2016-06-01). "กลไกการบรรเทาการโอเวอร์โหลดสำหรับเครือข่าย VoIP: แนวทางเลเยอร์การขนส่งตามการจัดการทรัพยากร" การทำธุรกรรมใน Emerging เทคโนโลยีสื่อสารโทรคมนาคม27 (6): 857–873. ดอย : 10.1002/ett.3038 . ISSN 2161-3915 . 
  14. ^ Montazerolghaem, A .; โมกัดดัม, MHY; Leon-Garcia, A. (มีนาคม 2018). "OpenSIP: สู่เครือข่าย SIP ที่กำหนดโดยซอฟต์แวร์" รายการ IEEE บนเครือข่ายและการจัดการบริการ 15 (1): 184–199. arXiv : 1709.01320 . ดอย : 10.1109/TNSM.2017.2741258 . ISSN 1932-4537 . S2CID 3873601 .  
  15. ^ อัซเซดีน (2006). คู่มือของอัลกอริทึมสำหรับเครือข่ายไร้สายและคอมพิวเตอร์มือถือ ซีอาร์ซี เพรส. NS. 774. ISBN 978-1-58488-465-1.
  16. ^ พอร์เตอร์ โธมัส; แอนดี้ ซโมเล็ค; แจน คันคลิร์ซ; อันโตนิโอ โรเซลา (2006). การปฏิบัติรักษาความปลอดภัย VoIP ซิงโครนัส น. 76–77. ISBN 978-1-59749-060-3.
  17. ^ "ตัวแทนผู้ใช้ที่เรารู้จัก" . ผู้ใช้ VoIP เก็บถาวรจากต้นฉบับเมื่อ 2011-07-16.
  18. ^ สตอลลิงส์ หน้า 214
  19. ^ Stallings, pp.216-217
  20. เจมส์ ไรท์. "SIP - บทนำ" (PDF) . คอนเนติสืบค้นเมื่อ2011-01-11 .
  21. ^ "SIpit Wiki" . สืบค้นเมื่อ2017-10-07 .
  22. ^ ประสบการณ์การใช้ TTCN-3 สำหรับการทดสอบ SIP และ OSP (PDF) ที่เก็บถาวรจากต้นฉบับ(PDF)เมื่อวันที่ 30 มีนาคม 2014
  23. ^ "ผลการดำเนินงานและการทดสอบความเครียดของเซิร์ฟเวอร์ SIP ลูกค้าและเครือข่าย IP" สตาร์ทรินิตี้ 2016-08-13.
  24. ^ "AT & T กล่าวถึงการใช้ SIP Peering สถาปัตยกรรม" sip-trunking.tmcnet.com . สืบค้นเมื่อ2017-03-20 .
  25. ^ "จากไอไอที VoIP Conference & Expo: AT & T SIP ภาพนิ่ง PowerPoint การขนส่ง" HD ข่าวเสียง 2010-10-19 . สืบค้นเมื่อ2017-03-20 .
  26. ^ จอนส์สัน, ลาร์ส; มาเธียส คอยชอน (2008) "Streaming ผลงานเสียงผ่าน IP" (PDF) รีวิวเทคนิค EBU สืบค้นเมื่อ2010-12-27 .
  27. ^ "โครงการ JAIN SIP" . สืบค้นเมื่อ2011-07-26 .
  28. ^ SIP-T บริบทและสถาปัตยกรรม กันยายน 2545. ดอย : 10.17487/RFC3372 . RFC 3372
  29. ^ "ทำไม SIP-I หรือไม่การสลับแกนพิธีสารคำแนะนำ" (PDF) เก็บถาวรจากต้นฉบับ(PDF)เมื่อ 2012-03-17

บรรณานุกรม

  • ไบรอันเรด; Steve Goodman (22 มกราคม 2558), Exam Ref 70-342 Advanced Solutions of Microsoft Exchange Server 2013 (MCSE) , Microsoft Press, p. 24, ISBN 978-0-73-569790-4
  • มิกก้า ปอยเซลก้า; จอร์จเมเยอร์; ฮิชาม คาร์ตาบิล; Aki Niemi (19 พฤศจิกายน 2547), The IMS: IP Multimedia Concepts and Services in the Mobile Domain , John Wiley & Sons, p. 268, ISBN 978-0-17-087114-0

ลิงค์ภายนอก