일부 네트워크 카드에 외부 펌웨어를 로드해야 하는 이유는 무엇입니까?

일부 네트워크 카드에 외부 펌웨어를 로드해야 하는 이유는 무엇입니까?

내가 읽고이것질문/답변, 하지만 일부 네트워크 카드는 추가 펌웨어 없이 작동하는 반면 다른 네트워크 카드는 작동하려면 펌웨어를 로드해야 하는 이유를 여전히 이해하지 못합니다.

구체적인 예로, 펌웨어가 없어 Broadcom 10Gb 네트워크 카드가 작동하지 않는 문제가 발생한 적이 있습니다. 반면 Intel 10Gb는 추가 펌웨어 없이도 완벽하게 작동합니다.

Intel 카드에는 이미 칩 내부에 펌웨어가 있지만 다른 카드에서는 펌웨어를 로드해야 한다고 가정합니다. 맞습니까? 모든 제조업체가 이미 칩에 펌웨어가 포함된 하드웨어를 제공하지 않는 이유는 무엇입니까?

참고: 펌웨어가 바이너리/독점인지 또는 무료/오픈 소스인지에 대해 말하는 것이 아닙니다. 왜 로드해야 하는지, 왜 장치에 아직 포함되지 않았는지 물었습니다.

답변1

정답은 판매자 자신만이 알고 있지만, 몇 가지 추측은 이렇습니다.

나는 그것이 장치를 더 비싸게 만들기 때문이라고 생각합니다. 운영 체제가 런타임에 펌웨어를 주입하도록 요구함으로써 장치에 ROM이나 플래시 메모리와 같은 비휘발성 메모리가 필요하지 않을 수 있습니다.

둘째, 펌웨어가 온보드된 경우 이상한 공급업체 제공 유틸리티를 사용하여 펌웨어를 다시 플래시하는 과정에서 문제가 발생하는 경우가 거의 없기 때문에 공급업체는 이러한 방식으로 장치가 보다 일관되게 펌웨어 업그레이드를 받을 수 있다고 생각할 수도 있습니다.

답변2

"이미 장치에 포함되어 있습니다"라고 언급하면 ​​OS 시나리오에서 미리 결정된(IEEE 또는 기타 관리 기관에서 승인한 API) 장치 쿼리를 사용할 수 있도록 하는 장치 드라이버 및 펌웨어의 방법을 언급하고 있다고 가정합니다. 그런 다음 OS가 지정된 메모리 주소에 어셈블리 코드를 로드하는 시점에 "이것은 내 장치 드라이버의 메모리 칩 위치 주소입니다."라고 응답합니까?

정말 좋지 않을까요? 새로 구입한 장치의 펌웨어가 원래 펌웨어를 대체하는 현재 집권하고 있는 억압적인 정권에 의해 변조되지 않았는지 확인하기 위해 암호화/암호 해독, 서명 및 제3자 서명 확인을 사용하여 해당 펌웨어를 보호하는 방법도 포함해야 할 수도 있습니다. 장치를 이동하기 전에 일부 코드를 성급하게 작성하여 확장 가능한 자동 조종 장치 기능이 새 차에 로드되기 전에 해당 코드로 인해 차량 왼쪽 근접 센서에 버그가 발생하여 3피트를 잘못 계산하여 나와 내 가족을 위험에 빠뜨렸습니다.

결국 과거에는 jtag 및 기타 분해 코드 도구를 사용하여 장치에 물리적으로 액세스하는 것만으로는 이러한 펌웨어 수정이 허용되지 않았습니다.

그러나 이 문제를 방어하기 위해 웹 사이트에서 로드 가능한 펌웨어를 사용하고 체크섬을 확인하는 것도 해결책이 아닙니다.

당신은 내가 대답할 자격이 없다고 생각하는 흥미로운 질문을 제기했습니다. :)

관련 정보