티스토리 뷰

728x90
반응형

공부를 하고 프로젝트를 하면서 노드라는 단어를 참 많이 듣기도 했고 쓰기도 했다.

 

그래도 그림자를 따라다니는 기분을 지울 수가 없어서, 내가 사용하는 범위 안에서만 정리하고 가자.

 

시작하기 전에, 노드는 맥락과 분야에 따라 굉장히 다양한 의미를 가지며, 내가 정리한 것은

 

오로지 내가 현재 관심 있는 분야에 한정된 자료에 불과하다.

 

Node - Data Structure

 

자료 구조를 배울 때, 특히 링크드 리스트나 트리, 더 일반적으로는 그래프에 대해 배울 때 노드라는 단어를 처음 만난다.

 

자료구조에서의 노드란 추상적으로 말하면 구조의 기본 단위, 트리나 그래프로 치면 정점이라고 할 수 있으며

 

덜 추상적으로 말하면 메모리 곳곳에 흩어져 있는 데이터의 조각, 혹은 그 기본적인 단위를 가리킨다.

 

추가로 링크드리스트의 처음과 마지막 노드를 각각 헤드와 테일이라고 부르며,

 

다음 노드의 주소를 가리키는 포인터와 함께 구성되어 있다.

 

Node - Network

 

사실은 이쪽 단어를 조금 더 명확하게 정리하고 넘어갈 필요성을 느꼈다.

 

네트워크에서 노드란 한 마디로 말하면 통신의 생성, 소별, 연결, 분배의 엔드포인트라고 정의할 수 있다.

 

굉장히 포괄적인 정의이기 때문에 상황에 따라 의미가 조금씩 달라지기도 하는데,

 

네트워크에 연결된 각각의 기계를 가리키는 단어로 사용되기도 하고(이를 TCP/IP 노드라 한다)

 

클라이언트 요청의 엔드포인트인 서버를 가리키기도, 멀티 노드 서버를 이루고 있는 각 기기를 가리키기도 한다.

 

추가로 네트워크에 대한 정의 중 하나가 바로 노드와 링크의 집합이며,

 

이 경우엔 위에 적었듯이 데이터를 송/수신할 수 있는 모든 기기를 노드라고 부른다.

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/06   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
글 보관함