หน้านี้อธิบายวิธีใช้ API เครือข่ายนำส่งข้อมูล (eCDN) ของ Google Meet Enterprise ในองค์กรสำหรับการไลฟ์สดของ Google Meet
โซลูชัน API ที่อธิบายไว้ที่นี่ช่วยให้ลูกค้าใช้ชุดฟีเจอร์ทั้งหมดของ eCDN ของ Meet ได้โดยไม่ต้องเปิดเผยข้อมูล IP ส่วนตัวต่อ Google คุณสามารถกำหนดเว็บเซอร์วิสในองค์กรใหม่ในเครือข่ายของคุณเองซึ่งส่ง รหัสแทนข้อมูลที่อยู่ IP ส่วนตัว
ภาพรวม eCDN ของ Meet
eCDN สร้างขึ้นใน Meet และจะเริ่มต้นระบบโดยอัตโนมัติในระหว่าง ไลฟ์สดหลังจากที่ผู้ดูแลระบบ Google Workspace ตั้งค่าแล้ว เมื่อเปิดใช้ eCDN ของ Meet ผู้ชมไลฟ์สดภายในเครือข่ายในพื้นที่จะแชร์สื่อที่ไลฟ์สดกับคนอื่นๆ ในเครือข่ายได้ผ่านการแชร์แบบเพียร์ทูเพียร์ (P2P) อุปกรณ์ส่วนใหญ่จะได้รับสื่อที่ไลฟ์สดจาก ผู้ที่อยู่ใกล้เคียงและไม่จำเป็นต้องดึงข้อมูลจากเซิร์ฟเวอร์ของ Google ซึ่งจะช่วยลด แบนด์วิดท์ทั้งหมดที่ผู้ชมใช้ ดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าและการใช้ eCDN ของ Meet ได้ที่การจัดไลฟ์สดขนาดใหญ่
eCDN กำหนดให้ผู้ชมไลฟ์สดของ Meet ต้องจัดกลุ่มเป็น กลุ่มเพียร์ กลุ่มเพียร์คือกลุ่มของโหนดที่ได้รับอนุญาตให้ แชร์สื่อกับโหนดอื่นๆ อุปกรณ์ในกลุ่มการเพียร์จะได้รับอนุญาตให้ เพียร์หรือถูกบล็อกจากการเพียร์ก็ได้ อุปกรณ์ที่อนุญาตจะเชื่อมต่อกับอุปกรณ์อื่นๆ ในกลุ่มการเพียร์เดียวกันเท่านั้น ดูข้อมูลเพิ่มเติมเกี่ยวกับกลุ่มการ Peering ได้ที่หัวข้อก่อนจะเริ่มจัดไลฟ์สดขนาดใหญ่
เมื่อใดที่ควรใช้ API
eCDN สามารถสร้างกลุ่มการเพียร์ได้โดยใช้นโยบายการเพียร์ที่แตกต่างกันหลายแบบ ได้แก่ random
,
subnet
หรือ custom rules
โดยจะแชร์ตารางช่วงเครือข่ายส่วนตัวกับเซิร์ฟเวอร์เครื่องมือติดตาม eCDN ของ Google เพื่อแมปที่อยู่ IP ส่วนตัวของโหนดเพียร์แต่ละรายการกับกลุ่มเพียร์ custom rules
นโยบายเป็นโซลูชันที่แนะนำและเหมาะกับสภาพแวดล้อมการผลิตส่วนใหญ่
อย่างไรก็ตาม custom rules
นโยบายกำหนดให้คุณต้องแชร์โครงสร้างเครือข่ายส่วนตัวส่วนใหญ่กับ Google
นอกจากนี้ ผู้ใช้แต่ละรายยังเปิดเผยที่อยู่ IP ส่วนตัวที่ตรวจพบในเครื่องต่อ Google ขณะใช้ eCDN สำหรับองค์กรบางแห่ง แนวทางด้านความปลอดภัยอาจไม่อนุญาตให้แชร์ข้อมูล IP ส่วนตัว
พัฒนาด้วย Meet eCDN On-Premises API
Meet eCDN On-Premises API มีข้อกำหนดของเว็บเซิร์ฟเวอร์ที่คุณ นำไปใช้และโฮสต์ในเครือข่ายขององค์กรได้ คุณสร้าง บริการบนเว็บที่กำหนดเองซึ่งเข้ากันได้กับ API เพื่อทำงานทั้งหมดที่ขึ้นอยู่กับ ข้อมูล IP ส่วนตัวได้ เพื่อไม่ให้มีการแชร์ข้อมูลกับ Google
API ครอบคลุม 2 ขั้นตอนสำคัญสำหรับการจับคู่ที่อยู่ IP ส่วนตัว ซึ่งโดยปกติจะจัดการโดยเซิร์ฟเวอร์ติดตาม eCDN ได้แก่ การแมปที่อยู่ IP ส่วนตัว กับกลุ่มการ Peering และการแลกเปลี่ยนข้อมูลข้อเสนอและคำตอบของ Session Description Protocol (SDP) ระหว่างการส่งสัญญาณ WebRTC
เมื่อบริการทางเว็บเสร็จสมบูรณ์แล้ว คุณต้องกำหนดค่า
คอนโซลผู้ดูแลระบบให้ใช้On-premises
service
นโยบายการ Peering และรวม URL ของบริการทางเว็บที่กำหนดเอง
ข้อกำหนด
หากต้องการเปิดใช้ข้อกำหนดเหล่านี้สำหรับองค์กร โปรดขอให้ผู้ดูแลระบบ Google Workspace ดำเนินการดังนี้
เว็บเซิร์ฟเวอร์ที่ใช้ HTTPS สามารถติดตั้งใช้งาน API นี้ได้
ใช้ HTTPS เพื่อป้องกันไม่ให้เนื้อหาผสมล้มเหลว
ยอมรับและแสดงผลข้อมูล JSON ใช้การเข้ารหัสเนื้อหาที่เบราว์เซอร์รองรับ
แสดงปลายทางภายใต้เส้นทาง
/vn
โดยที่n
คือเวอร์ชัน API ที่เลือก เช่น/v1/get-peering-group
ผู้ชมสตรีมมิงแบบสดของ Meet สามารถดู URL ของเว็บ เซอร์วิสของคุณได้ผ่านคอนโซลผู้ดูแลระบบของ Google คุณตั้งค่า URL ได้ ทั่วโลก ต่อหน่วยขององค์กร หรือต่อกลุ่ม ตรวจสอบว่าผู้ชมเชื่อมต่อกับอินสแตนซ์ของบริการที่กำหนดได้ ดูข้อมูลเพิ่มเติมได้ที่กำหนดค่าคอนโซลผู้ดูแลระบบ
บริการของคุณควรแสดงการตอบกลับภายใน 2 วินาที ไม่เช่นนั้น ไคลเอ็นต์ eCDN จะปิดตัวลงและผู้ชมจะดูการถ่ายทอดสดต่อไปในฐานะผู้ใช้ทั่วไปที่ไม่ใช่ eCDN ซึ่งจะทำให้ผู้ชมไม่สามารถประหยัดแบนด์วิดท์ได้
บริการของคุณต้องตั้งค่าส่วนหัวกลไกการแชร์ทรัพยากรข้ามโดเมน (CORS) ต่อไปนี้
Access-Control-Allow-Origin: meet.google.com
Access-Control-Allow-Headers: GET, POST, OPTIONS
Access-Control-Allow-Credentials: true
แมปที่อยู่ IP ส่วนตัวกับกลุ่มการ Peering
ไคลเอ็นต์ eCDN จะโทรออกทุกครั้งที่พยายามเชื่อมต่อกับเซิร์ฟเวอร์เครื่องมือติดตาม eCDN อีกครั้ง
หลังจากที่อุปกรณ์ตรวจพบที่อยู่ IP ส่วนตัวแล้ว คุณต้อง
แมปที่อยู่ดังกล่าวกับกลุ่มเพียร์ที่เหมาะสม คุณต้องส่งที่อยู่ IP ส่วนตัวไปยังเซิร์ฟเวอร์ในเครือข่ายและแก้ไขด้วยตนเองไปยังกลุ่มเพียร์โดยใช้วิธีget-peering-group()
ระบบจะแสดงรหัสกลุ่มการ Peering ในการตอบกลับ
เมื่อสื่อสารกับ Google ระบบจะส่งรหัสกลุ่มการ Peering ที่ได้แทน
ที่อยู่ IP ส่วนตัว

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเรียกใช้เมธอด get-peering-group()
พร้อมกับการตอบกลับข้อผิดพลาดที่อาจเกิดขึ้นและเนื้อหาการตอบกลับที่คาดไว้
POST /v1/get-peering-group
Content-Type: application/json
Request body:
{
"availableIPs": []{
"format": "ipv4"|"ipv6",
"address": "DETECTED_ADDRESS"
}
}
Error response:
{
"result": null,
"error": "ERROR_MESSAGE",
}
Response body:
{
"result": "PEERING_GROUP_ID",
"error": null,
}
ตารางต่อไปนี้แสดงรูปแบบการตอบกลับที่คาดไว้
สถานะ HTTP | ข้อผิดพลาด | รหัสกลุ่มการ Peering | รีแอ็กชันของลูกค้า |
---|---|---|---|
200 | Null | สตริงที่ไม่ใช่ค่าว่าง | ควรจัดเรียงไคลเอ็นต์เป็นกลุ่มการ Peering และดำเนินการเชื่อมต่อกับเซิร์ฟเวอร์เครื่องมือติดตาม eCDN |
200 | Null | NOT_FOUND |
ไคลเอ็นต์สิ้นสุดเซสชัน eCDN |
200 | Null | BLOCKED |
ไคลเอ็นต์สิ้นสุดเซสชัน eCDN |
200 | สตริงอื่นๆ ที่ไม่ใช่สตริงว่าง | Null | ไคลเอ็นต์สิ้นสุดเซสชัน eCDN |
302 (พบ) | ไคลเอ็นต์จะเปลี่ยนเส้นทางไปยัง URL ใหม่ที่ระบุในส่วนหัวของ Location ในเนื้อหาการตอบกลับ |
||
รหัสสถานะอื่นๆ | สตริงใดก็ได้ | สตริงใดก็ได้ | ไคลเอ็นต์สิ้นสุดเซสชัน eCDN |
การแลกเปลี่ยนข้อมูลข้อเสนอ-คำตอบของ SDP
หากต้องการเริ่มการเชื่อมต่อ WebRTC อุปกรณ์ต้องแลกเปลี่ยนข้อเสนอและคำตอบ SDP รวมถึง Interactive Connectivity Establishment (ICE) ที่มีข้อมูล IP ส่วนตัว โดยจะดำเนินการดังกล่าวเป็นส่วนหนึ่งของกระบวนการส่งสัญญาณ WebRTC
ไคลเอ็นต์ต้องเข้ารหัสผู้สมัคร ICE ภายในเครือข่ายผ่าน Meet eCDN On-Premises API โดยใช้วิธี encrypt-sdp()
โดยวิธีนี้จะใช้คีย์
ที่ไม่เคยเปิดเผยต่อ Google จากนั้นระบบจะส่งข้อเสนอ SDP ที่เข้ารหัสไปยังเพียร์
โดยใช้เซิร์ฟเวอร์ติดตาม eCDN จากนั้นเพียร์ไคลเอ็นต์จะถอดรหัสข้อมูลที่ได้รับภายในเครือข่ายของตนโดยใช้วิธีdecrypt-sdp()
จากนั้น Google จะ
ส่งต่อข้อเสนอและคำตอบระหว่างเพียร์ที่เชื่อมต่อ
เมื่อสร้างการเชื่อมต่อโดยใช้ Meet eCDN On-Premises API แล้ว eCDN จะทำงานตามปกติ เพียร์จะกำหนดเส้นทางสื่อผ่านเครือข่ายเพียร์ปกติ และการรับส่งข้อมูลสื่อจะไม่ผ่านหรือใช้ API

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเรียกใช้เมธอด encrypt-sdp()
พร้อมกับการตอบกลับข้อผิดพลาดที่อาจเกิดขึ้นและเนื้อหาการตอบกลับที่คาดไว้
POST /v1/encrypt-sdp
Content-Type: application/json
Request body:
{
"data": "SDP_DATA" // raw SDP data
},
Error response:
{
"result": null,
"error": "ERROR_MESSAGE", // error message
}
Response body:
{
"result": "ENCRYPTED_DATA_STRING", // encrypted data as string
"error": null,
}
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเรียกใช้เมธอด decrypt-sdp()
พร้อมกับการตอบกลับข้อผิดพลาดที่อาจเกิดขึ้นและเนื้อหาการตอบกลับที่คาดไว้
POST /v1/decrypt-sdp
Content-Type: application/json
Request body:
{
"data": "ENCRYPTED_DATA_STRING", // encrypted data as string (size limit: 1 MB)
},
Error response:
{
"result": null,
"error": "ERROR_MESSAGE", // error message
}
Response body:
{
"result": "SDP_DATA" // raw SDP data
"error": null,
}
ตารางต่อไปนี้แสดงรูปแบบการตอบกลับที่คาดไว้
สถานะ HTTP | ข้อผิดพลาด | รหัสกลุ่มการ Peering | รีแอ็กชันของลูกค้า |
---|---|---|---|
200 | Null | สตริงที่ไม่ใช่ค่าว่าง | ไคลเอ็นต์คาดหวังว่าจะมีการใช้ข้อมูล SDP ที่เข้ารหัสหรือถอดรหัสอย่างถูกต้อง |
200 | สตริงใดก็ได้ที่ไม่ใช่สตริงว่าง | Null | ไคลเอ็นต์สิ้นสุดเซสชัน eCDN |
302 (พบ) | ไคลเอ็นต์จะเปลี่ยนเส้นทางไปยัง URL ใหม่ที่ระบุในส่วนหัวของ Location ในเนื้อหาการตอบกลับ |
||
รหัสสถานะอื่นๆ | ค่าใดก็ได้ | ค่าใดก็ได้ | ไคลเอ็นต์สิ้นสุดเซสชัน eCDN |
กำหนดค่าคอนโซลผู้ดูแลระบบ
หากต้องการใช้ Meet eCDN On-Premises API คุณต้องกำหนดค่า eCDN ใน คอนโซลผู้ดูแลระบบให้มี URL ของ บริการทางเว็บที่กำหนดเอง
หากต้องการตั้งค่า eCDN ให้สร้างนโยบายการเพียร์โดยใช้ On-premises service
เพื่อจับคู่ข้อมูล IP กับกลุ่มการเพียร์ด้วยตนเอง
คุณยังระบุหมายเลขพอร์ตได้ด้วยหากไม่ได้ใช้พอร์ตเริ่มต้น 443 URL ควรมีรูปแบบดังนี้
WEB_SERVICE.example.com:8080
โดย WEB_SERVICE
คือชื่อบริการเว็บของคุณ
ดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่านโยบายการ Peering ได้ที่กำหนดค่าการจัดกลุ่มเครือข่าย
หัวข้อที่เกี่ยวข้อง
หากต้องการดูวิธีใช้ eCDN ของ Meet ให้ทำตามขั้นตอนในการจัด ไลฟ์สดขนาดใหญ่
ดูวิธีตั้งค่า eCDN ได้ที่ก่อนจะเริ่มจัดไลฟ์สดขนาดใหญ่
ดูวิธีตั้งค่าเครือข่ายได้ที่หัวข้อเตรียมเครือข่ายให้พร้อมสำหรับการประชุมและไลฟ์สดใน Meet
หากต้องการลงชื่อเข้าใช้คอนโซลผู้ดูแลระบบของ Google ในฐานะผู้ดูแลระบบ โปรดดูลงชื่อเข้าใช้ คอนโซลผู้ดูแลระบบ