Транспортный уровень AppleTalk реализуется двумя основными протоколами AppleTalk: AppleTalk Transaction Protocol (ATP) (Протокол транзакций AppleTalk) и AppleTalk Data Stream Protocol (ADSP) (Протокол потока данных АppleTalk). АТР является транзакционно-ориентированным, в то время как ADSP является ориентированным по потоку данных.
Протокол транзакций AppleTalk (ATP)
ATP является одним из протоколов транспортного уровня Appletalk. АТР пригоден для применений, базирующихся на транзакциях, которые можно встретить в банках или магазинах розничной торговли.
В транзакции АТР входят запросы (от клиентов) (requests) и ответы (от служебных устройств) (replies). Каждая пара запрос/ответ имеет отдельный ID транзакции. Транзакции имеют место между двумя гнездами клиентов. АТР использует транзакции "точно-один раз" (exactly once - XO) и "по крайней мере один раз" (at-least-once - ALO), Транзакции ХО требуются в тех ситуациях, когда случайное выполнение транзакции более одного раза неприемлемо. Банковские транзакциии являются примером таких неидемпотентных (nonidempotent) ситуаций (ситуаций, когда повторение какой-нибудь транзакции вызывает проблемы, что достигается тем, что делаются недействительными данные, участвующие в данной транзакции).
АТР способен выполнять наиболее важные функции транспортного уровня, в том числе подтверждение о приеме данных и повторную передачу, установление последовательности пакетов, а также фрагментирование и повторную сборку. АТР ограничивает сегментирование сообщений до 8 пакетов; пакеты АТР не могут содержать более 578 информационных байтов.
Протокол потока данных AppleTalk (ADSP)
ADSP является другим важным протоколом транспортного уровня Apple Talk. Как видно из его названия, ADSP является ориентированным по потоку данных, а не по транзакциям. Он организует и поддерживает полностью дублированный поток данных между двумя гнездами в об'единенной сети AppleTalk.
ADSP является надежным протоколом в том плане, что он гарантирует доставку байтов в том же порядке, в каком они были отправлены, а также то, что они не будут дублированы. ADSP нумерует каждый байт, чтобы отслеживать отдельные элементы потока данных.
ADSP также определяет механизм управления потоком. Пункт назначения может в значительной степени замедлять передачи источника путем сокращения размера об'явленного окна на прием.
ADSP также обеспечивает механизм сообщений управления "выхода из полосы" (out-of-band) между двумя об'ектами AppleTalk. В качестве средства для перемещения сообщений управления выхода из полосы между двумя об'ектами AppleTalk используются пакеты "внимания" (attention packets).Эти пакеты используют отдельный поток номеров последовательностей, чтобы можно было отличать их от обычных пакетов данных ADSP.