Classical IP over ATM cú nhược điểm lớn nhất là việc liờn lạc giữa cỏc host thuộc cỏc LIS khỏc nhau phải qua router, đõy là nhược điểm của CLIP khụng những chỉ cú trong mạng ATM núi riờng mà cũn cú trong cỏc mạng NBMA (Non- Broadcast Multi Access) như ATM Frame Relay , X 25 núi chung. Trong cỏc mạng này việc kết nối trực tiếp giữa cỏc mỏy là điều luụn cú thể thực hiện được. Hơn nữa do việc truyền dữ liệu cũng loại bỏ luụn khả năng thiết lập kết nối trực tiếp với chất lượng dịch vụ nhất định giữa hai host.
Để khắc phục nhược điểm này, nhúm làm việc ROLC (Routing Over Large Clounds) của IETF đó đề xuất ra một giao thức mới cú tờn là NHRP sử dụng NHRP server (NHs) . Trong mỗi NHS cú lưu giữ một bảng dữ liệu ỏnh xạ địa chỉ IP và ATM với NHS khi trạm khởi tạo.
NHS cú thể hoạt động ở hai chế độ . Ở chế độ “server” mỗi NHS trong LIS được cấu hỡnh với cỏc địa chỉ IP của cỏc trạm và địa chỉ của NHS khỏc để cú thể trả lời yờu cầu ỏnh xạ địa chỉ IP . Cỏch hoạt động này chỉ thớch hợp cho cỏc mạng nhỏ.
Ở chế độ “fabric” , NHS tự tỡm hiểu cỏc địa chỉ IP mà cỏc NHS khỏc cú thể trả lời được thụng qua cỏc giao thức định tuyến intradomain và interdomain. Để bớt phức tạp, NHS giả định rằng cỏc NHS cú thể trả lời địa chỉ ỏnh xạ ATM từ IP sẽ nằm trờn đường định tuyến gúi tin tới đớch. Điều này cú nghĩa là tất cả cỏc router ở lối ra của mạng phải đúng vai trũ là NHS cho tất cả cỏc trạm khụng thuộc LIS chứa nú. Giao thức sẽ hoạt động như sau: Khi một trạm trong LIS muốn chuyển gúi tin đến một trạm trực thuộc LIS khỏc, nú sẽ tạo một gúi tin yờu cầu NHRP Request theo khuụn dạng đinh trước và sử dụng thực thể NHC (NHRP Client ) để gửi cho NHS thuộc LIS chứa nú. Sau khi nhận được yờu cầu này, NHS tiến hành kiểm tra và gửi trở lại cho trạm nguồn một NHRP- Reply nếu nú biết được địa chỉ ATM mà trạm nguồn yờu cầu. Trường hợp ngược lại , nếu NHS này khụng biết, khi đú NHS sẽ căn cứ vào bảng định tuyến của nú để xỏc định NHS tiếp theo phải gửi gúi tin yờu cầu này đến. Tại NHS tiếp theo quỏ trỡnh được lặp lại cho đến khi cú một NHS nào đú biết được địa chỉ ATM của trạm đớch. Khi đú gúi tin NHRP- Reply sẽ được truyền trở lại và đi qua tất cả cỏc NHS mà gúi tin yờu cầu đó được gửi qua với mục đớch để cỏc NHS cú thể biết thờm được một ỏnh xạ IP- ATM mới. NHRP-Reply về đến trạm nguồn , trạm này tiếp nhận và một kết nối được thiết lập trực tiếp giữa trạm nguồn và trạm đớch . Hỡnh 3.16 dưới đõy sẽ minh hoạ cho quỏ trỡnh xỏc định địa chỉ với giao thức NHRP.
Tuy nhiờn, trong quỏ trỡnh đợi NHRP- Reply , trạm nguồn cú thể tiếp tục gửi gúi tin cho router mặc định của mỡnh để giảm trễ cho đến khi biết được địa chỉ ATM của trạm
đớch thụng qua NHS và nú sẽ sử dụng kết nối trực tiếp để truyền dữ liệu. Trong đặc tả của giao thức NHRP khụng núi đến việc thứ tự cỏc gúi tin cú thể bị lẫn lộn do việc cỏc gúi tin truyền qua router đến sau cỏc gúi tin truyền qua kết nối trực tiếp. Việc giải quyết lẫn lộn đú do cỏc giao thức tầng mạng của trạm đớch đảm nhiệm.
Hỡnh 3.16: Hoạt động của NHRP
Ngoài khả năng cung cấp hoạt động theo chế độ “fabric” ra , NHS cũn cung cấp thờm một số Option như ghi lại đường đi để xỏc định vũng lặp hay NHS cú thể gửi trực tiếp cỏc gúi tin của trạm nguồn cho trạm đớch trong trường hợp host đớch khụng chấp nhận một kết nối trực tiếp với host nguồn. Một Option khỏc nữa là NHS cú thể trả về khụng những địa chỉ ATM tương ứng với địa chỉ IP biết trước mà cũn cả subnet mask của nú. Khi đú cỏc NHS trờn đường truyền cú thể dễ dàng trả lời cỏc yờu cầu hỏi địa chỉ hơn. Ngoài ra cũn cú cơ chế Timer và làm tươi sao cho cỏc ỏnh xạ địa chỉ trong bảng lưu trữ luụn phản ỏnh đỳng thực tế.
Một vấn đề được đặt ra khi sử dụng giao thức NHRP đú là khi kết nối hai trạm là router , việc sử dụng NHRP cú thể dẫn tới trường hợp vũng lặp do khi sử dụng NHRP cho router ta đó vi phạm giả thiết cỏc router sẽ truyền dẫn cỏc gúi tin để làm tươi bảng định tuyến cho tất cả cỏc router kề nú. Tuy nhiờn , hiện nay ATM sử dụng chủ yếu cho mạng backbone, hơn thế để xảy ra trường hợp vũng lặp trạm phải là dạng multihome (ngoài đường truyền với trạm đớch qua mạng ATM, nú cũn cú đường truyền khỏc cũng cú thể đến được trạm đớch), khả năng này hiếm khi xảy ra.
NHS3 NHS2 NHS1 NHS4 HOST 1 HOST 2 ATM Network
LIS4 LIS3 LIS2 LIS1 ATM Network
Tuy nhiờn, nhúm RDLC đó bàn đến một giải phỏp cú thể khắc phục được hạn chế này, đú là khi một NHS hiện ra sự thay đổi về tỡnh trạng mạng cú thể dẫn tới lặp, nú sẽ gửi gúi tin tới tất cả cỏc trạm và lưu giữ cỏc thụng tin về ỏnh xạ địa chỉ nhận được để làm tươi bảng lưu giữ của mỡnh.