LACP는 스위치 지원이 나쁘면 별로네요.

깡통이   
   조회 13144   추천 0    

안녕하세요?

최근에 LACP 구성을 새로 만들어서 테스트를 좀 했는데 대역폭 분산이 잘 안되더라고요.

클라이언트 2대에서 커넥션을 4-5개씩 만들어서 해봤는데도 전체 합계가 1Gbps 를 넘지 못해가지고 알아보니까.

분산 알고리즘이 src-dst-mac 으로 되어 있더라고요. (스위치는 DELL 5548 입니다.)

이전에 DELL 8132F 모델은 Enhanced Hashing 이라고 해서, 출발지와 목적지 포트까지도 이용해서 분산을 하는 알고리즘이 지원됐는데,

5548모델은 급이 낮아서인지 L3 정보인 IP까지만 보고 분산을 하는 것 같습니다.(매뉴얼에는 src-dst-mac, src-dst-ip, src-dst-mac-ip 까지 있네요.)

2포트 LACP <-> 4포트 LACP 서버간에 커넥션을 여러개 만들어서 전체 대역폭이 2Gbps까지 쓰도록 하고 싶었는데,

그렇게 하려면 port 까지 보고 분산을 시켜줘야 하는데 그게 스위치에서 안되는 것이었습니다.


아무튼 결론은 스위치가 별로라면 스위치에 의존적인 LACP를 쓰는 것보다는 그냥 OS에서 지원하는 본딩 방식이 나은 것 같습니다.

리눅스의 경우에는 balanced-alb 모드가 괜찮아 보이네요.

LACP는 반드시 한 스위치에 몰아서 꽂아야 되는 반면에, 이 경우에는 슬레이브 노드의 랜선을 각각 다른 스위치에 꽂아도 된다고 나와있네요.

각각 다른 스위치에 꽂았을 때, 경우에 따라서는 트래픽이 이상하게 돌아올수도 있겠지만, 한 스위치의 장애를 회피하는 목적으로 사용할 수도 있을 것 같습니다.

김건우 2017-01
스위치와 랜카드에 똑같이 lacp 또는 본딩이 되어야 하는걸로 아는데요? 한쪽(랜카드)만 묶어줬다고해서 분산, 백업, 대역폭통합등이 안되는걸로 알고있습니다.
     
깡통이 2017-01
LACP는 스위치 지원이 필요하지만, 다른 방식은 OS레벨에서 분산을 하기 때문에 스위치가 필요하지 않은 것들이 있습니다.

https://www.kernel.org/doc/Documentation/networking/bonding.txt
리눅스 bonding 문서를 보시면, balanced-alb의 경우 스위치의 지원은 필요하지 않다고 나와 있습니다.
balanced-alb의 경우에 전송하는 경우는 알아서 나눠서 어댑터 별로 나눠서 하고,
수신하는 경우에는 arp 응답을 상대측 서버마다 다르게 하며 상대측에서 mac address로 분산이 되도록 되어 있습니다.

물론 서버 자체에서 하는 것보다는 스위치쪽에서 잘 해주는 것이 낫겠죠.
패킷을 보내는 거야 내가 내가 가진 NIC 들에 알아서 나눠 보내주면 되지만, 남이 보내주는 것은 스위치에서 보내주는 NIC으로 받아야 되니까요.
양측 OS가 SMB3.0을 지원한다면 LACP때문에 굳이 비싼 스마트스위치를 쓸 필요가 없죠. 하지만 5548이 그렇게 저급 스위치도 아닌데 스위치에서 대역폭 분산이 안되는 경우는 아니겠죠.
     
깡통이 2017-01
5548이 분산이 안되는 것은 아닌데, L3 까지만 패킷을 분석해서 분산하기 때문에, L4 이상으로 분산이 필요한 경우에는 부적합하다는 뜻입니다.
L4 패킷까지 분석해서 처리할 수 있어서 포트 기반으로 분산을 한다면 아주 좋았겠죠. 그럼 서버 두 대간의 1:1 연결해서도 커넥션이 많으면 총 대역폭이 늘어날 테니까요.
8132F는 그게 됐길래 5548도 될 줄 알았는데 안되더라구요.


제목Page 84/107
2017-01   10353   배고프고가…
2017-01   13145   깡통이
2017-01   19384   하늘색꿈
2017-01   10352   김현린
2017-01   21262   나는안다
2017-01   16687   빡시다
2017-01   10475   DOX
2017-01   15931   이태욱
2017-01   11807   나노큐브
2016-12   16694   공백기
2016-12   16706   새총
2016-12   8925   Sakura24
2016-12   15340   공백기
2016-12   10174   윤현기
2016-12   16631   새총
2016-12   11069   sensyb
2016-12   8099   들고양이
2016-12   7611   Nuge
2016-12   6030   gusanaki
2016-12   8922   박건