Transport layer

Transport layer буюу Тээвэрлэлтийн түвшин (дугаараар нь layer 4 ч гэдэг) нь процесс хоорондын end-to-end дамжууллыг тодорхойлж өгдөг[1], компьютерын сүлжээний хийсвэрлэлтийн түвшин юм. Өгөгдлийн урсгалыг байнгын холболттойгоор бий болгох, найдвартай дамжуулал, өгөгдлийн урсгалын хурд хэмжээг удирдах, мультиплекс гэх мэт үйлчилгээнүүдийг тодорхойлно.

Transport layer нь одоогийн сүлжээнүүдэд ашиглагддаг TCP/IP загвар (RFC 1122),[2] болон сүлжээний түвшингүүдийг онолын хувьд тодорхойлж өгдөг OSI загварын аль алинд тусгагдсан байдаг. OSI дахь transport layer-ийн тодорхойлолт нь бага зэргийн ялгаатай бөгөөд эдгээрээс хамгийн том нь мультиплекс үйлчилгээ буюу портыг OSI-д session layer-д хамаарна гэдэг.

Transmission Control Protocol (TCP) нь TCP/IP загварийн гол хоёр протоколын нэг болдогоороо өнөөгийн Интернэт сүлжээний үндсэн transport layer-ийн протокол болж өгдөг. TCP нь холболт үүсгэсний дараа (connection oriented) дамжуулалт хийдгээрээ холболтгүй шууд дамжуулдаг (connectionless) User Datagram Protocol (UDP)-гээс ялгарна. TCP нь илүү нарийн ажиллагаатай протокол бөгөөд холболтын төлөвийг хадгалж, найвартай дамжууллыг хангаж өгдөг. UDP нь харин энгийн зурвас дамжуулахад ихэвчлэн хэрэглэгддэг.

TCP, UDP-гээс гадна Datagram Congestion Control Protocol (DCCP), Stream Control Transmission Protocol (SCTP) гэсэн протоколууд transport layer-т хамаарана.

Үйлчилгээ[засварлах | кодоор засварлах]

Дараах үйлчилгээнүүдийг transport layer-т тусгаж өгсөн байдаг ба бодитоор хэрэгжүүлсэн протоколууд нь эдгээрийн заримыг хангаж өгсөн байна.

  • Холболт үүсгэсний дараа дамжуулах: Сүлжээгээр мэдээлэл дамжуулах програм нь өгөгдлийг урсгал хэлбэрээр хүлээж авч, дамжуулах нь хялбар байдаг. UDP, IP-д өгөгдөл нь датаграм хэлбэрээр дамжуулагддаг.
  • Дарааллыг хадгалж хүргэх: Сүлжээний түвшинд өгөгдлийн пакетүүд нь илгээсэн дарааллаас өөр дараалалтайгаар хүлээн авагчид очиж болно. Transport layer-т сегментүүдийг дугаарласнаар програмд зөв дараалалтайгаар хүргэгдэх боломжтой (гэхдээ бөглөрөл үүсэх магадлал бий).
  • Найвартай байдал: Сүлжээний бөглөрөл, холболтонд учирсан алдаанаас үүдэн пакетууд нь дамжууллын явцад алдагдаж болно. Checksum гэх мэтийн алдаа шалгагч код ашиглаж алдааг шалгах, ACK эсвэл NACK зурвасыг ашиглан пакет алдаагүй эсвэл алдаатай ирсэнийг (ирээгүйг) мэдэгдэж болно. Мөн Automatic repeat request механизмаар дахин дамжуулна.
  • Урсгалыг удирдаж зохицуулах: Илгээх хурд хэт ихдэж хүлээн авагчийн буффер дүүрэхээс хамгаалах ёстой. Түүнчлэн буффер дахь өгөгдлийн хэмжээ хэт багадахаас хамгаалж сүлжээний ашиглалтыг нэмэгдүүлнэ.
  • Бөглөрөлөөс хамгаалах: Congestion control-г хэрэгжүүлснээр сүлжээний хэт ачааллаас хамгаална. Жишээлбэл automatic repeat request-г байнга хэрэглэхэд сүлжээ байнга бөглөрсөн байдалтай байж болох тул slow-start аргыг хэрэглэнэ (энэ нь дамжууллын эхэнд, эсвэл пакетийг дахин дамжууллын дараа сүлжээний ачааллыг бага хэмжээтэй байлгадаг).
  • Мультиплекс: Порт ашиглан сүлжээнд холбогдсон нэг төхөөрөмж нь олон холболтыг дэмжиж, олон програм сүлжээг ашиглах боломжтой болгоно. Энэ нь TCP/IP-д transport layer-т хамаарах ч OSI загварт session layer-д хамаарана.

Transport layer протоколуудын жишээ[засварлах | кодоор засварлах]

Үйлчилгээ UDP UDP Lite TCP Multipath TCP SCTP DCCP RUDP
Пакетийн толгой хэсгийн хэмжээ 8 байт 8 байт 20–60 байт 50–90 байт 12 байт 12 эсвэл 16 байт
Transport-layer өгөгдлийн нэгж Датаграм Датаграм Сегмент Сегмент Датаграм Датаграм Датаграм
Холболт үүсгэдэг Үгүй Үгүй Тийм Тийм Тийм Тийм Тийм
Найдвартай дамжуулдаг Үгүй Үгүй Тийм Тийм Тийм Үгүй Тийм
Найдваргүй дамжуулдаг Тийм Тийм Үгүй Үгүй Тийм Тийм Тийм
Зурвасын хязгаарыг хадгалдаг Тийм Тийм Үгүй Үгүй Тийм Тийм Тийм
Дарааллыг хадгалж илгээдэг Үгүй Үгүй Тийм Тийм Тийм Үгүй Тийм
Дарааллыг хадгалахгүй илгээдэг Тийм Тийм Үгүй Үгүй Тийм Тийм Тийм
Өгөгдлийн checksum Заавал биш Тийм Тийм Тийм Тийм Тийм Тодорхойлоогүй
Checksum хэмжээ (бит) 16 16 16 16 32 16 Тодорхойлоогүй
Дутуу checksum Үгүй Тийм Үгүй Үгүй Үгүй Тийм Үгүй
Замын MTU Үгүй Үгүй Тийм Тийм Тийм Тийм Тодорхойлоогүй
Урсгалыг удирдаж зохицуулах Үгүй Үгүй Тийм Тийм Тийм Үгүй Тийм
Бөглөрөлийг удирдаж зохицуулах Үгүй Үгүй Тийм Тийм Тийм Тийм Тодорхойлоогүй
Explicit Congestion Notification Үгүй Үгүй Тийм Тийм Тийм Тийм
Давхар урсгал Үгүй Үгүй Үгүй Тийм Тийм Үгүй Үгүй
Multi-homing Үгүй Үгүй Үгүй Тийм Тийм Үгүй Үгүй
Bundling / Nagle Үгүй Үгүй Тийм Тийм Тийм Үгүй Тодорхойлоогүй

Эшлэл[засварлах | кодоор засварлах]

  1. RFC 1122, §1.1.3. "The transport layer provides end-to-end communication services for applications."
  2. RFC 1122, Requirements for Internet Hosts – Communication Layers, IETF, R. Braden (Editor), October 1989