Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question regarding Max APDU #493

Open
christopherjohnson1535 opened this issue Jun 26, 2023 · 2 comments
Open

Question regarding Max APDU #493

christopherjohnson1535 opened this issue Jun 26, 2023 · 2 comments

Comments

@christopherjohnson1535
Copy link

Hello, I have a few questions regarding max APDU and BACpypes.

  1. Does BACpypes take care of ensuring that the APDU is within the limit of the BACnet device? I.e. Can I request infinite properties using readMultipleProperties? Or is it my responsibility to ensure that I am not requesting too many properties at once?
  2. Does using the local device object affect the amount of properties that will be sent in a request? For example, if I use a local device with a max APDU of 480, will it only send our messages with an APDU of 480?

Thanks!

@JoelBender
Copy link
Owner

  1. No, it assumes an infinite amount of buffer space for encoding and decoding packets. For example, if this is larger than what can be contained in a single UDP packet (limited by the next layer down, like Ethernet of 1.5K (or 9K with jumbo frames)) then the packet is fragmented, which might not be supported by the peer. There could be a platform that limits the packet size in the socket library implementation so you'll get an exception of some kind. The limit of the number of properties that you can successfully request will most likely be determined by the server (a.k.a. B-side) with its maximum APDU size and segmentation support.
  2. Also no.

@christopherjohnson1535
Copy link
Author

Do you have any recommendations of a clean way to ensure that not too many properties are requested beside testing with different property counts?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants