2011-01-26 16 views
8

Chúng tôi đang triển khai giải pháp dựa trên SIP và đã định cấu hình thiết lập để hoạt động với RTPProxy. Ngay bây giờ, chúng tôi đang định tuyến mọi thứ thông qua RTPProxy vì chúng tôi đang gặp một số vấn đề về phương tiện truyền thông dựa trên ICE. Nếu chúng ta không nhầm, một máy chủ chuyển tiếp trung tâm là cần thiết để chuyển tiếp dữ liệu luồng giữa hai máy khách nếu chúng nằm phía sau NAT đối xứng. Trong thực tế, đây có phải là một tỷ lệ phần trăm lớn của tất cả người dùng tiêu dùng? Chúng tôi tiết kiệm bao nhiêu băng thông nếu chúng tôi triển khai định tuyến thích hợp để bỏ qua máy chủ chuyển tiếp khi không cần thiết. Có những giải pháp tốt hơn chúng ta đang thiếu?Tỷ lệ phần trăm người dùng nào đứng sau NAT đối xứng, như vậy lưu lượng truy cập "p2p" cần phải được chuyển tiếp?

Trả lời

3

Một tỷ lệ lớn (nếu không phải là đa số) người dùng gia đình sử dụng NAT, vì đó là những gì các bộ định tuyến xDSL/cáp sử dụng để cung cấp quyền truy cập mạng vào mạng cục bộ.

Bạn về mặt lý thuyết có thể sử dụng UPnP để mở cổng và thiết lập quy tắc chuyển tiếp trên bộ định tuyến để đi qua NAT một cách minh bạch. Thật không may (hoặc may mắn thay, tùy thuộc vào bạn là ai) nhiều người dùng vô hiệu hóa UPnP như là một vấn đề của khóa học trên router của họ và có thể không đánh giá cao việc phải thêm quy tắc chuyển tiếp bằng tay.

Những gì bạn có thể làm (và những gì Skype làm AFAIK) là có một số người dùng có đường dẫn mạng rõ ràng và đủ băng thông hoạt động như các nút chuyển tiếp. Ngoài các vấn đề định tuyến và QoS, ít nhất bạn cũng phải tìm một số cách để đảm bảo quyền riêng tư của bất kỳ dữ liệu chuyển tiếp nào từ bất kỳ ai, kể cả chủ sở hữu của nút chuyển tiếp. Ngoài ra, có thể có các vấn đề pháp lý để giải quyết theo cách tiếp cận này, ngoài các phương pháp kỹ thuật.

8

Để rơi của tính hữu dụng:

  • Có một kết nối trực tiếp giữa hai thiết bị đầu cuối theo cả hai hướng. Bạn chỉ cần kết nối và về cơ bản bạn đã hoàn thành.
  • Có kết nối trực tiếp giữa hai điểm cuối trong một hướng. Trong trường hợp đó, bạn chỉ cần kết nối qua đúng hướng bằng cách thử cả hai.
  • Cả hai bên đều đứng sau NAT.
    • May mắn thay, UPnP hoạt động ở một đầu, sau đó bạn có thể nâng cấp kết nối đến các chương trình trên
    • UPnP không làm việc, nhưng STUN làm. Sử dụng nó để đấm một lỗ hổng trong NAT. Có một vài giao thức khác nhau nhưng thủ thuật chung là thương lượng thông qua một người đàn ông trung gian phối hợp xuyên NAT.
    • Bạn quay lại để cho một nút khác trên mạng hoạt động như một proxy chuyển tiếp.

Nếu bạn thực hiện danh sách đầy đủ ở trên, sau đó bạn phải từ bỏ rất ít kết nối và không cần phải dành nhiều thời gian vào việc sử dụng băng thông tại các proxy. Giao thức BitTorrent, mà tôi quen thuộc, thường dừng ở UPnP, nhưng cung cấp một thử nghiệm tích hợp để kiểm tra kết nối thông qua NAT.

Thực sự thắc mắc tại sao IPv6 không được triển khai trước đó - đây là sự lãng phí thời gian của người lập trình.

+2

một tốt đẹp về IPv6 thực hiện: P –

Các vấn đề liên quan