To preface this question, I use Signal messaging app for voice, video and text. I understand that the content of all these messages are encrypted and no-one but the sender and recipient can see/hear this content. I should also say that I live in a country (Australia) where it is very easy for any authorities to obtain meta data of my communications, but quite difficult to obtain permission to attempt to view/listen to the content.
So I want to know what meta data my ISP can obtain regarding my communications over Signal. I have no doubt they can tell that I am using signal, that they see that I connect to a Signal server and that they can see when I send communications. They can probably tell if it is text or voice/video communications. I am okay with all of this. I also understand that I could hide much of this from my ISP if I used a VPN (but that is not the question I want to ask).
My question is, what else can my ISP see? Particularly, is there anything in the metadata that they have access to that would let them know who I am communicating with (or which IP address I am communicating with). Does any of the data flow directly from my device to the recipients device without going through a Signal server? Or does it go through a Signal server, but has some unencrypted information that would give away the recipient?
In the Australian context, ISPs are required to store all metadata for a period of 2 years, so I would imagine a persistent investigator could match details about volume of data flowing out of one device with the amount of data flowing into another device and have fairly clear evidence of who is communicating with who (ie. traffic analysis attack). This would be particularly obvious for voice and video calls which are always synchronous. For text messages, they may be held at the server for delivery later, in the case where a device is off or out of range.